首页 > 解决方案 > 如何更改表单 CharField 中的默认空代表?

问题描述

我使用带有 BooleanField 和 CharField 的未绑定表单

不需要

但是当为空时,数据库中的值是 Charfield 的代表空字符串和 BooleanField 的 0

我想要 NULL 值,但不知道如何设置它。

class CreateForm(forms.Form):

    def __init__(self, request, *args, **kwargs):
        super(CreateForm, self).__init__(*args, **kwargs)
        self.fields["field1"] = forms.BooleanField(label = "", required = False, initial=None)
        self.fields["field2"] = forms.CharField(label = "", required = False, initial=None)

标签: pythondjangoforms

解决方案


如果您想将空值设置为 null,您只需将 null=True 添加到您的字段。

class CreateForm(forms.Form):

    def __init__(self, request, *args, **kwargs):
        super(CreateForm, self).__init__(*args, **kwargs)
        self.fields["field1"] = forms.BooleanField(label = "", required = False, initial=None, null=True)
        self.fields["field2"] = forms.CharField(label = "", required = False, initial=None, null=True)

推荐阅读