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. computed set 自定义参数_完全理解Vue的渲染watcher、computed和user watcher
  2. java netfox_SpringFox集成原理
  3. python网页请求_python用post请求网页
  4. Python pandas库159个常用方法使用说明(转载)
  5. 时间轴的实现(简单到爆炸)
  6. iOS绘图UIBezierPath 和 Core Graphics框架
  7. IDEA 这个小技巧太实用了。。
  8. 在Ubuntu系统中给应用创建快捷方式
  9. 朴素贝叶斯算法_C语言实现朴素贝叶斯算法(Naive Bayes)
  10. 在线教育逆流而上,网络直播课成教育新宠
  11. 新手入门吉他买什么好?十年吉他老司机教你如何远离烧火棍,附上靠谱吉他品牌推荐!
  12. html th中加斜杠,css 模拟表格斜线
  13. 浅谈网页设计中的构图
  14. Qt for Android获取手机序列号
  15. iVMS-4200 Vs区别_13595足球推荐分析 法甲 21:00 安格斯 VS 梅斯
  16. 计算机无法正常启动安全模式开启,解决办法:如何解决Win7计算机无法正常启动而只能进入安全模式的问题...
  17. c++ string assign和operator=
  18. DRV10983驱动无刷电机调试过程与踩坑记录
  19. 练习题之金融应用:比较不同利率下的贷款
  20. rs232串口通讯模块 - Delphi编程

热门文章

  1. 如何在不接收返回值的情况下获取返回值?
  2. XP电脑开机就检查硬盘
  3. 常见算法基础题思路简析(六)-字符串篇
  4. cocoaPods 创建自己的依赖库
  5. Jenkins持久化集成使用
  6. mongoDB's Optimization example
  7. MySQL级联删除和级联修改
  8. WPF Invoke与BeginInvoke的区别
  9. hihocoder题目
  10. [BZOJ4897][Thu Summer Camp2016]成绩单