更新时间:2023-01-12 来源:黑马程序员 浏览量:
Form类的字段本质上也是一个类,定义表单字段的同时可以为字段的构造函数传入参数,对字段进行设置。表单字段具有一些通用参数。下面介绍常用的字段通用参数。
1.required
参数required用于设置当前字段是否为必需字段。默认情况下,表单中的每个字段都是必需字段,如此,若提交表单时检测到存在未赋值的表单字段,程序会抛出ValidationError异常。若要将字段指定为非必需字段,可以在定义表单字段时,将字段的required参数设置为False,例如:
f = forms.CharField(required=False)
这种情况下若字段未被赋值,将返回空值。
2.label
参数label用于为字段指定标签,以便呈现更友好的表单。例如:
name = forms.CharField(label='名字')
HTML页面中相应的渲染结果如下:
<label for="your_name">Your name: </label>
若未设置字段的此项参数,应在HTML页面中为表单字段渲染的控件指定标签。
3.initial
参数initial用于为字段设置初始值,例如:
name = forms.CharField(initial='凌零')
HTML页面中相应的渲染结果如下:
<input type="text" name="name" value="凌零" required>
4.help_text
参数help_text用于指定字段的描述性文本。
5.error_messages
参数error_messages用于重写字段的错误提示信息,该参数是一个字典,其中的键值为错误的类型。例如,重写required属性引发的错误ValidationError,示例代码如下:
>>> name = forms.CharField(error_message={'required': 'Please enter your name'})
调用clean()方法引发异常,操作方式与结果如下:
>>> name.clean('') Traceback (most recent call last): ... ValidationError: ['Please enter your name']
6.localize
参数localize用于启用或关闭本地化。
7.disabled
参数disabled用于设置字段是否使用默认值,默认为False,表示使用默认值。当disabled的值为True时,字段使用默认值且不可编辑,即使用户篡改提交给服务器的数据以修改该字段,相关数据也会被忽略。