django表单的主要用途
渲染表单模板
表单验证数据是否合法
django表单的导入
from django import forms
django表单类常用字段(Field)类型
使用Field可以对数据验证保证其正确性
froms.CharField() 文本类型
CharField() : 用来接收文本
参数详解:
CharField()
max_length:存储最大长度
min_length:存储最小长度
required: 表示该字段是否不能为空, 默认是不为空
error_messges: 某个条件验证失败时, 给出的错误信息
-
forms.CharField(widget=forms.Textarea) 表示超长的文本类型
-
forms.EmailField(): 用来接收邮箱地址的, 会自动验证邮箱地址是否合法
forms.EmailField()
错误的信息key: required. invalid
参数:
required: 表示该字段是否不能为空, 默认是不为空
forms.FloatField() : 浮点类型
forms.FloatField()
用来接收浮点类型的, 并且验证通过后, 会将这个字段的值转为浮点类型
错误的信息key: required. invalid max_value min_value
参数:
参数详解:
max_length:存储最大长度
min_length:存储最小长度
required: 表示该字段是否不能为空, 默认是不为空
forms.IntegerField() 整数类型
forms.IntegerField() 整数类型
用来接收整数类型的, 并且验证通过后, 会将这个字段的值转为整形
错误的信息key: required. invalid max_value min_value
max_length:存储最大长度
min_length:存储最小长度
forms.URLField()
URLField()
用来接收url格式的字符串,例如: https://editor.csdn.net/md?articleId=103558417
错误的信息key: required. invalid
django表单的使用流程
定义表单类
在app中创建一个py文件,专门用来定义表单类
定义视图
实例化将表单对象传入前端页面, 前端页面可以调用方法进行美化
表单对象 = 表单类() <class 'form.Message'>
表单对象 = 表单类(request.POST)
表单对象 = 表单类(request.GET)
得到<class 'form.Message'> 可以使用 is_valid()方法进行判断是否为真
取值: 表单对象.cleaned_data.get('键')
cleaned_data 得到是字典对象
错误时, 打印的比较人性化
- 模板文件
在该模板中一定要写form标签,
和一个提交按钮
{{ form.as_table }} 表示的是使用table标签进行美化, 会自动生成tr, td的子标签
还可以使用ul方式美化(as_ul)
和p标签方式(as_p)