form组件的主要功能如下:
1.生成页面可用的HTML标签
2.对用户提交的数据进行校验
3.保留上次输入内容
使用form组建就能完成1.生成HTML代码2.数据有效性校验3校验信息返回并展示

form组件的用法

1. from django import forms
2, 定义一个form类class RegForm(forms.Form):user = forms.CharField()pwd = forms.CharField()email = forms.EmailField()
生成HTML:3. 实例化一个form对象, 传递到html模板中4. 在模板中调用form对象的响应方法和属性方式:1. {{ obj.as_p }}2. 单独写{{ obj.pwd.label }}{{ obj.pwd }}
做校验:1. obj = RegForm(request.POST)2. obj.is_valid()

form中常用的字段和插件

#创建Form类时,主要涉及到 【字段】 和 【插件】,字段用于对用户#请求数据的验证,插件用于自动生成HTML;
class LoginForm(forms.Form):username = forms.CharField(min_length=8,label="用户名",initial="张三"  # 设置默认值error_messages={"required": "该字段不能为空","min_length": "用户名不能少于6位",},widget=forms.widgets.TextInput(attrs={"class": "use"}))pwd = forms.CharField(min_length=6, label="密码") #密码显示明文pwd = forms.CharField(min_length=6,label="密码",widget=forms.widgets.PasswordInput(attrs={'class': 'c1'}, render_value=True))'''
1.required=Ture 是否可以为空
2.label 输入框前面的内容,对输入框的描述
3.initial 输入框中的默认值
4.error_messages 定义错误信息,由于可定义多个,在html页面调用时使用errors,常用form_obj.username.errors.0取索引
5.widgte  HTML插件要使用forms.widgets模块,其中attrs的值为字典,定义一个属性,便于设置样式
6.forms.widgets.PasswordInput将密码显示为密文。render_value=True保存原来填写的密码
7.help_text='帮助信息', #帮助信息(在标签旁边显示)
8.disabled = False, # 是否可以编辑
'''

form校验

def login(request):if request.method == 'GET':obj = LoginForm()return render(request, "login.html", {"obj":obj})else:# username = request.POST.get('username')# pwd = request.POST.get('pwd')obj = LoginForm(request.POST) ## {"username":'xx', 'pwd':'xx'}if obj.is_valid():print(obj.cleaned_data) ## 对象else:print(obj.errors) ### 对象 __str__return render(request, "login.html", {'obj':obj})'''
在获取登录信息校验时:
obj.is_valid() 是True表示所有字段都通过校验
obj.cleaned_data:是一个字典,所有通过校验的数据放在里面
obj.errors:是一个字典,所有的错误字段的信息
'''

转载于:https://www.cnblogs.com/yellowcloud/p/11383971.html

43.django中form组件相关推荐

  1. Django中Form组件的使用

    Form介绍 HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入 ...

  2. 转载:Django之Form组件

    Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 小试牛刀 1.创建Form类 + View C ...

  3. Django之Form组件介绍

    --------------------------------------前言------------------------------------ 在进入正题之前,想多说两句; 当我们开始学习一 ...

  4. Ant Design中Form组件重置验证条件resetFields()方法

    Ant Design中Form组件重置验证条件resetFields()方法 需求, 实际完成时间(与任务生成日期联动,若任务生成日期选上,实际完成时间禁选) 却发现在验证完之后填写实际完成时间后任务 ...

  5. Django的form组件提交时错误不显示或无法提交

    出现的问题:在学习django的form组件时,对不符合form组件定义的字段无法提交,进而导致无法显示出自定义的错误信息.(因为无法提交就代表着数据没有传给后台,然后你的错误回显是在后台对数据的检验 ...

  6. Django之Form组件

    一.Form组件介绍 1.Form组件可以做的几件事情 1.用户请求数据验证 2.自动生成错误信息 3.打包用户提交的正确信息 4.如果其中有一个错误了,其他的正确这,保留上次输入的内容 5.自动创建 ...

  7. Django基础11(Django中form表单)

    Form介绍 之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入 ...

  8. Django框架-Form组件

    一.DjangoForm组件介绍 我们之前在html页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校 ...

  9. Django之form组件!

     一.手动实现注册功能 注册功能1.渲染前端标签获取用户输入 >>> 渲染标签2.获取用户输入传递到后端校验 >>> 校验数据3.校验未通过展示错误信息 >& ...

  10. python---django中form组件(1)简单使用和字段了解

    Django中的Form组件功能: 1.对用户请求的验证 2.生成html代码 Form使用:对用户请求进行验证 前端代码: <form action="/f1.html" ...

最新文章

  1. 收藏的2个正则html标签剔除方法
  2. android 按钮点击间隔,如何自定义android中按下的长/延迟按钮的时间间隔
  3. 5000起步没商量!vivo NEX 3S 5G手机正式发布:骁龙865+无界瀑布屏加持
  4. Linux 系统下对目录扩容的方法
  5. Chaos Control for Mac(GTD计划任务管理工具)
  6. 全国计算机应用考试试卷,全国信息化计算机应用技术水平教育考试试卷
  7. 大数据人工智能发展趋势与前景
  8. 机器人体验营笔记(一)概要
  9. Windows查找文件内容
  10. 一些特殊符号%$等等,如何写在xml,TextView中
  11. Chrome浏览器通过chrono下载插件设置下载断点续传
  12. error ‘for’ loop initial declarations are only allowed in C99 mode的报错原因和两种解决办法
  13. window下解压tar.gz.part-*文件
  14. euclidea教程_Euclidea - 有一种浪漫叫欧氏几何 - iPhone应用 - 【最美应用】
  15. Open Replicator
  16. 计算机指令exec,2.1.3 使用jexec工具管理jail虚拟机
  17. 一、Tomcat概述
  18. 献结程序员的一个故事——管道的故事
  19. 复选框如何实现单选框效果
  20. 音效codec芯片解决方案

热门文章

  1. 使用Opencv绘制灰度直方图/对比
  2. Python包的相对导入时出现错误的解决方法
  3. JVM 性能调优实战之:使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码...
  4. EF Core 2.0中Transaction事务会对DbContext底层创建和关闭数据库连接的行为有所影响...
  5. socket error:10053
  6. 5.7. Text Processing
  7. NSA漏洞披露政策:攻击和防御间的权衡
  8. linux awk数组使用
  9. RemoveDirectory 功能:删除文件夹
  10. Python - 优雅而简单地完成http请求