gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-30 23:06:35 25 4
gpt4 key购买 nike

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

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

然后我有一堆从这个模型继承的其他模型,以及类似的东西......

class ExampleModel(SupremeModel):
name = models.TextField(null=False, blank=False)
description = models.TextField(null=False, blank=False)

class AnotherModel(SupremeModel):
title = models.TextField(null=False, blank=False)
location = models.TextField(null=False, blank=False)

我想为几乎所有与ExampleModel类似的自定义模型创建一个Django模型表单,但我总是希望在表单中排除SupremeModel中的字段...

如何创建一个可用于继承排除参数的 ModelForm,这些参数将隐藏创建者、创建者、删除者和修改者,但显示所有其他字段(在本例中为名称和描述或标题和位置)。

最佳答案

你可以试试这个

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

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

关于python - 如何为抽象模型创建 Django ModelForm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32576348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com