0

我正在使用CreateViewUpdateView直接进入urls.py名为 dydict 的应用程序。在forms.py我正在使用的文件中ModelForm,我排除了几个字段的显示,其中一些应该在创建或更新时设置。因此,如标题中所述,update部分有效,但创建部分无效,这很明显,因为我排除的必填字段被发送为空,这在我的情况下是不允许的。所以这里的问题是,我应该如何将排除的字段填充到文件forms.py中,这样我就不必覆盖CreateView

提前致谢。

4

2 回答 2

1

好吧,您必须在某处设置必填字段。如果您不希望它们在表单中显示或可编辑,您的选择是在视图中设置它们(通过使用 的自定义子类CreateView),或者如果适合您的设计在save模型类的方法中。default或者在模型中的字段上声明一个适当的值。

它也可以允许字段进入表单,但将它们设置为使用HiddenInput小部件。这对恶意输入是不安全的,所以我不会对纯粹的自动化字段这样做。

于 2013-10-30T21:15:14.583 回答
0

您不能排除在模型定义中按要求设置的字段。您需要为这些模型字段中的每一个定义blank=True/ null=True

如果这不能解决您的问题,请向我们展示模型和表单定义,以便我们确切知道代码的样子。

于 2013-10-30T21:09:42.807 回答