當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。