[英]Multi FormSet error “Calling modelformset_factory without defining 'fields' or 'exclude' explicitly is prohibited”
[英]Getting a 'modelformset_factory without defining 'fields' error' using Django inline formset. What am I doing wrong?
我的models.py看起来像这样:
class Member(models.Model):
name = models.CharField(max_length=255)
occupation = models.CharField(max_length=255)
class FamilyMember(models.Model):
name = models.CharField(max_length=255)
relation = models.CharField(max_length=255)
member = models.ForeignKey(Member)
我正在尝试为成员表单中的家庭成员创建内联表单。 为此,我使用inlineformset_factory
:
from django import forms
from myapp.models import *
from django.forms.models import inlineformset_factory
class MemberForm(forms.ModelForm):
class Meta:
model = Member
fields = [
'name', 'occupation',
]
FamilyMemberFormSet = inlineformset_factory(Member, FamilyMember)
当我运行服务器时,我收到以下错误:
"Calling modelformset_factory without defining 'fields' or "
django.core.exceptions.ImproperlyConfigured: Calling >modelformset_factory without defining 'fields' or 'exclude' explicitly is prohibited.
我究竟做错了什么?
我不确定,但我认为您忘记将表单传递给inlineformset_factory
:
FamilyMemberFormSet = inlineformset_factory(Member, FamilyMember, form=MemberForm)
或者,您应使用fields
参数或exclude
指定应包含/排除的fields
。
这个给你:
FamilyMemberFormSet = inlineformset_factory(Member, FamilyMember, fields =['name', 'occupation',])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.