广州番禺Python, Java小班周末班培训
薯条老师在广州做Python和Java的小班培训,一个班最多10人,学员的平均就业薪资有11K。不在广州的同学可以报名线上直播班,跟线下小班的同学们同步学习。培训的课程有Python爬虫,Python后端开发,Python办公自动化,Python大数据分析,Python量化投资,Python机器学习,Java中高级后端开发。授课详情请点击:http://chipscoco.com/?cate=6
8.3.1 django表单的字段类型
django内置的表单系统会对表单字段自动进行验证和标准化,在对字段值进行验证的过程中,如果字段值不符合字段选项的定义,例如字段长度超过了max_length定义的长度,就会在页面中弹出错误消息提示。对字段值进行标准化处理,即把字段值转换为标准的Python对象,例如将CharField的输入标准化为字符串类型,将DateField的输入标准化为日期类型。
此外,django中的表单字段都会绑定一个默认的widget,例如CharField默认的widget是一个TextInput,表示一个文本输入框。以下为django表单中的主要字段类型:
1.BooleanField
(1) 默认的widget是CheckboxInput,对应于HTML表单中的checkbox
(2) 标准化后的数据类型为布尔类型
(3) 空值为False
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
数据验证:
字段选项required为True时,如果字段值为空,会提示错误信息。
2.CharField
(1) 默认的widget是TextInput,对应于HTML表单中的文本输入框
(2) 标准化后的数据类型为字符串类型
(3) 空值为empty_value,默认为空字符串
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) strip:布尔类型,如果选项值为True,django表单会删除字段值首尾的空白字符
(3) max_length:指定字段的最大长度
(4) min_length:指定字段的最小长度
数据验证:
字段选项required为True时,如果字段值为empty_value时,会提示错误信息,当字段长度不在max_length或min_length范围内时,也会提示错误信息。
3.IntegerField
(1) 默认的widget是NumberInput,字段选项localize为True时为TextInput
(2) 标准化后的数据类型为整型
(3) 空值为None
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) max_value:指定字段的最大值
(3) min_value:指定字段的最小值
数据验证:
字段选项required为True时,如果字段值不在max_value或min_value的范围内时,会弹出错误提示信息。
4.FloatField
(1) 默认的widget是NumberInput,字段选项localize为True时为TextInput
(2) 标准化后的数据类型为python中的float类型
(3) 空值为None
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) max_value:指定字段的最大值
(3) min_value:指定字段的最小值
数据验证:
字段选项required为True时,如果字段值不在max_value或min_value的范围内时,会弹出错误提示信息。
5.DecimalField
(1) 默认的widget是NumberInput,字段选项localize为True时为TextInput
(2) 标准化后的数据类型为python的decimal类型
(3) 空值为None
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) max_value:指定字段的最大值
(3) min_value:指定字段的最小值
(4) max_digits:指定字段中的数字最大位数
(5) decimal_places:指定字段中的小数位数
数据验证:
字段选项required为True时,如果字段值不在max_value,min_value,max_digits,decimal_places选项的范围内时,会弹出错误信息。
6.DateTimeField
(1) 默认的widget是DateTimeInput,对应于HTML表单中的日期时间控件
(2) 标准化后的数据类型为python中的datetime.datetime对象
(3) 空值为None
字段选项:
(1) input_formats:用来指定字段值的日期时间格式
数据验证:
字段选项required为True时,如果字段值为空或不符合字段的默认日期时间格式时,会提示错误信息。
7.ChoiceField
(1) 默认的widget是select,对应于HTML表单中的下拉框
(2) 标准化后的数据类型为python中的字符串对象
(3) 空值为''
字段选项:
(1) choices:是一个二维元组,用来定义下拉框中的选项,用法同模型中的choices
数据验证:
字段选项required为True时,如果字段值不存在与下拉框中时,会弹出错误信息
8.EmailField
(1) 默认的widget是EmailInput,对应于HTML表单中的文本输入框
(2) 标准化后的数据类型为python中的字符串对象
(3) 空值为''
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) max_length:指定字段的最大长度
(3) min_length:指定字段的最小长度
数据验证:
字段选项required为True时,出现下面几种情况之一都会弹出错误消息提示:
(1) 字段值为空
(2) 邮件地址无效
(3) 字段长度不在min_length或max_length选项的范围内
9.FileField
(1) 默认的widget是ClearableFileInput
(2) 标准化后的数据类型为django中的UploadFile对象
(3) 空值为None
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) allow_empty_file:布尔类型,表示是否允许上传空文件
(3) max_length:指定文件的最大长度
数据验证:
在不允许上传空文件,且文件长度大于max_length时会弹出错误消息提示。
10.RegexField
(1) 默认的widget是TextInput
(2) 标准化后的数据类型为字符串类型
(3) 空值为''
字段选项:
(1) required:布尔类型,表示是否必填,默认为True
(2) regex:用来指定一个正则表达式
(3) strip:布尔类型,如果选项值为True,在对字段值进行正则匹配前会删除首尾的空白字符
数据验证:
在required为True时,如果用户的输入如果与regex指定的正则表达式不匹配,会弹出错误信息
8.3.2 字段类型的核心参数
字段参数名 | 描述 |
required | 在默认情况下,django表单字段的required参数为True,表示必填,在字段值为None或空字符串时,会抛出ValidationError的错误异常。
|
label | 用来为表单字段指定一个人类可读的标签,django在进行模板渲染时会自动添加一个HTML label标签。
|
initial | 用来为用户的输入框指定一个初始值。
|
widget | 用来为表单字段指定一个表单组件 |
help_text | 用来为表单字段指定描述性的文本信息 |
error_messages | 用来为表单字段指定错误提示信息 |
validators | 用来为表单字段指定一个验证器 |
localize | 布尔类型,值为True时会将输入进行本地化处理 |
disabled | 布尔类型,表示是否对用户的输入进行禁用 |
8.3.3 最具实力的小班培训
薯条老师在广州做Python和Java的小班培训,一个班最多10人。不在广州的同学可以报名线上直播班,跟线下小班的同学们同步学习。打算参加小班培训的同学,必须遵守薯条老师的学习安排,认真做作业和项目。把知识学好,学扎实,那么找到一份高薪的工作就是很简单的一件事。
(1) Python后端工程师高薪就业班,月薪11K-18K,免费领取课程大纲
(2) Python爬虫工程师高薪就业班,年薪十五万,包拿Offer
(3) 数据分析高薪就业班,月薪11K-15K, 免费领取课程大纲
(4) Python大数据挖掘,量化投资就业班,月薪12K-25K,免费领取课程大纲
扫码免费领取Python学习资料: