Django charfield blank = False,但是在管理员中覆盖必需= False

时间:2016-10-11 02:45:48

标签: django-forms django-database

所以除了在管理控制台中,我希望在表单中始终需要一些字段。它们也是列表可编辑的'。

这意味着最简单的方法是在模型上设置blank = False,但仅对admin表单覆盖required = False。

class MyModel(models.Model):
     first_name = models.CharField(max_length=40, null=True)

class MyAdminForm(forms.ModelForm):
    first_name = forms.CharField(max_length=40, required=False)

class MyAdmin(admin.ModelAdmin):
    list_editable = ('first_name', ...)
    form = MyAdminForm

但是,当设置了一个值,并且您想将其设置为null时,您就可以了。

Django不会在数据库中将其保存为null,而是尝试将其保存为空字符串""因为它是一个charfield。

0 个答案:

没有答案