dar*_*rse 5 python django django-forms
我的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)
Run Code Online (Sandbox Code Playgroud)
现在,我正在尝试为成员表单中的家庭成员创建内联表单.为此,我使用inlineformset_factory:
来自django的导入表单来自myapp.models import*来自django.forms.models import 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)
Run Code Online (Sandbox Code Playgroud)
当我运行服务器时,我得到一个奇怪的错误:
"Calling modelformset_factory without defining 'fields' or "
django.core.exceptions.ImproperlyConfigured: Calling >modelformset_factory without defining 'fields' or 'exclude' explicitly is prohibited.
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?谢谢.
Sha*_*ang 14
我不确定,但我认为你忘记将表单传递给inlineformset_factory:
FamilyMemberFormSet = inlineformset_factory(Member, FamilyMember, form=MemberForm)
Run Code Online (Sandbox Code Playgroud)
或者您应该使用fields参数或指定应包含/排除哪些字段exclude.
请参阅Django doc中有关inlineformset_factory的一些示例.
小智 5
给你:
FamilyMemberFormSet = inlineformset_factory(Member, FamilyMember, fields =['name', 'occupation',])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3986 次 |
| 最近记录: |