当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Django Field.required用法及代码示例


本文介绍 django.forms.Field.required 的用法。

声明

Field.required

默认情况下,每个 Field 类都假定该值是必需的,因此如果您传递一个空值 - None 或空字符串 ( "" ) - 那么 clean() 将引发 ValidationError 异常:

>>> from django import forms
>>> f = forms.CharField()
>>> f.clean('foo')
'foo'
>>> f.clean('')
Traceback (most recent call last):
...
ValidationError: ['This field is required.']
>>> f.clean(None)
Traceback (most recent call last):
...
ValidationError: ['This field is required.']
>>> f.clean(' ')
' '
>>> f.clean(0)
'0'
>>> f.clean(True)
'True'
>>> f.clean(False)
'False'

要指定字段是not 必需的,请将required=False 传递给Field 构造函数:

>>> f = forms.CharField(required=False)
>>> f.clean('foo')
'foo'
>>> f.clean('')
''
>>> f.clean(None)
''
>>> f.clean(0)
'0'
>>> f.clean(True)
'True'
>>> f.clean(False)
'False'

如果 Field 具有 required=False 并且您传递 clean() 一个空值,则 clean() 将返回一个 normalized 空值,而不是提高 ValidationError 。对于 CharField ,这将返回默认为空字符串的 empty_value 。对于其他 Field 类,它可能是 None 。 (这因领域而异。)

必填表单字段的小部件具有required HTML 属性。将 Form.use_required_attribute 属性设置为False 以禁用它。 required 属性不包含在表单集的表单中,因为在添加和删除表单集时浏览器验证可能不正确。

相关用法


注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.forms.Field.required。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。