Django 陷入类型错误:\ uuuu init\ uuuu()接受1个位置参数,但给出了2个

Django 陷入类型错误:\ uuuu init\ uuuu()接受1个位置参数,但给出了2个,django,django-views,Django,Django Views,我遵循这个特别的教程()来让我的动态表单集工作。我遇到了这个错误,我不知道它是从哪里来的,也不知道如何解决它。有人能告诉我怎么解决这个问题吗?是的,我知道这是一个重复的问题。我已经阅读了很多答案,但在我的案例中却无法找到答案 查看代码: class ProfileList(ListView): model = Profile class ProfileFamilyMemberCreate(CreateView): model = Profile fields =

我遵循这个特别的教程()来让我的动态表单集工作。我遇到了这个错误,我不知道它是从哪里来的,也不知道如何解决它。有人能告诉我怎么解决这个问题吗?是的,我知道这是一个重复的问题。我已经阅读了很多答案,但在我的案例中却无法找到答案

查看代码:

    class ProfileList(ListView):
    model = Profile

class ProfileFamilyMemberCreate(CreateView):
    model = Profile
    fields = ['first_name', 'last_name']
    success_url = reverse_lazy('purchase_order')

    def get_context_data(self, **kwargs):
        data = super(ProfileFamilyMemberCreate, self).get_context_data(**kwargs)
        if self.request.POST:
            data['familymembers'] = FamilyMemberFormSet(self.request.POST)
        else:
            data['familymembers'] = FamilyMemberFormSet()
        return data

    def form_valid(self, form):
        context = self.get_context_data()
        familymembers = context['familymembers']
        with transaction.atomic():
            self.object = form.save()

            if familymembers.is_valid():
                familymembers.instance = self.object
                familymembers.save()
        return super(ProfileFamilyMemberCreate, self).form_valid(form)
Forms.py

class FamilyMemberForm(forms.ModelForm):
    class Meta:
        model = FamilyMember
        exclude = ()

FamilyMemberFormSet = inlineformset_factory(Profile, FamilyMember,
                                            form=FamilyMemberForm, extra=1)
回溯:

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  35.             response = get_response(request)

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  128.                 response = self.process_exception_by_middleware(e, request)

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  126.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

Exception Type: TypeError at /documents/purchase_order/
Exception Value: __init__() takes 1 positional argument but 2 were given
回溯:

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  35.             response = get_response(request)

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  128.                 response = self.process_exception_by_middleware(e, request)

File "/Users/thahaabdulwahid/miniconda3/envs/projectEnv/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  126.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

Exception Type: TypeError at /documents/purchase_order/
Exception Value: __init__() takes 1 positional argument but 2 were given

您的问题与表单集无关,而是在url配置中。对于基于类的视图,需要在模式中调用其
as_view()
方法:

 url(r'^purchase_order/$', views.ProfileList.as_view(), name='purchase_order')

请参阅。

您的问题与表单集无关,而是在url配置中。对于基于类的视图,需要在模式中调用其
as_view()
方法:

 url(r'^purchase_order/$', views.ProfileList.as_view(), name='purchase_order')

请参阅。

显示完整的回溯。以及FamileMemberFormSet的定义,假设是该类引起了问题。@DanielRoseman添加了详细信息。请看一看。您是如何引用url中的这些视图的。py?urlpatterns=[url(r'^purchase\u order/$,views.ProfileList,name='purchase\u order')]显示完整的回溯。以及FamileMemberFormSet的定义,假设是该类引起了问题。@DanielRoseman添加了详细信息。请看一看。您是如何在url.py中引用这些视图的?urlpatterns=[url(r'^purchase\u order/$,views.ProfileList,name='purchase\u order')]