如何为抽象模型创建Django ModelForm?

2024-04-25 23:04:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个抽象模型,其他模型都继承自它,看起来像这样。在

class SupremeModel(models.Model):
    creator = models.ForeignKey(User, related_name="%(class)s_creator")
    created = models.DateTimeField(null=True, blank=True)
    deleted = models.BooleanField(default=False)
    modified = models.DateTimeField(null=True,blank=True)

    class Meta:
        abstract = True

然后我有一堆其他的模型继承自这个模型,有一些沿着这些思路。。。在

^{pr2}$

我想为我几乎所有的定制模型创建一个Django模型表单,这些模型看起来与ExampleModel相似,但是我总是希望superMemodel中的字段在表单中被排除。。。在

如何创建一个可以用来继承排除参数的ModelForm,这些参数将隐藏creator、created、deleted和modified,但显示所有其他字段(在本例中为name和description或title和location)。在


Tags: name模型true表单参数modelsnullclass
1条回答
网友
1楼 · 发布于 2024-04-25 23:04:55

你可以试试这个

class ExcludedModelForm(ModelForm):
    class Meta:
        exclude = ['creator', 'created', 'deleted', 'modified']

class ExampleModelForm(ExcludedModelForm):
    class Meta(ExcludedModelForm.Meta):
        model = ExampleModel

相关问题 更多 >