在ModelForm中删除父类的字段

时间:2010-12-23 07:29:12

标签: django django-forms

我有一个继承自另一个模型的模型(不是抽象的) 我有一个继承模型的ModelForm,但我不想显示基本模型中的任何字段。 除了明确手动将每个字段添加到排除列表之外,实现此目的的最佳方法是什么?

2 个答案:

答案 0 :(得分:5)

使用Meta.exclude

class ChildForm(BaseModelForm):

    class Meta:
       model = Amodel
       exclude = ('parentfield1', 'parentfield2')

答案 1 :(得分:1)

我个人将include字段设置为当前类的字段,因此您不必引用(可能)另一个文件来查看字段。还允许更新父级而不影响您的表单。

您可以检查__dict__中的字段,看看它们是否属于父母,但老实说,我认为这不值得。简而言之,没有简单的方法。