我有两个表单类,每个都是同一个模型的 ModelForm。一个被称为 ProjectForm
,另一个被称为AdminProjectForm
。ProjectForm
排除了许多字段,AdminProjectForm
没有。
在我看来,我正在使用两个类,Edit
并且AdminEdit
. Edit
使用 Django 通用编辑视图UpdateView
并form_class
设置为ProjectForm
. AdminEdit
是一个继承Edit
并form_class
设置为AdminProjectEdit
。
有人会认为这意味着由 生成的表单AdminEdit
将显示排除在Edit
. 这部分工作正常 - 表单字段绘制得非常好(并且没有在Edit
.AdminEdit
ProjectForm
这是我的forms.py
:
class ProjectForm(ModelForm):
class Meta:
model = Project
exclude = ('field1', 'field2', 'field3', 'qualifies_for_judging', 'reason_for_disqualification', 'finalist', 'hashtag')
class AdminProjectForm(ModelForm):
class Meta:
model = Project
exclude = ()
还有我的views.py:
class Edit(UpdateView):
model = Project
form_class = ProjectForm
class AdminEdit(Edit):
model = Project
form_class = AdminProjectForm