django中forms组件的使用与注意


Posted in Python onJuly 08, 2019

forms组件

django框架提供了一个Form类,来进行web开发中的表单提交数据的处理工作。

导入相关模块

from django import forms

from django.forms import fields

常规使用

class F1Form(forms.Form):
 username = fields.CharField(max_length=18,min_length=2,required=True)
 pwd = fields.CharField(required=True,max_length=16,min_length=6)
 age = fields.IntegerField(required=True)
 email = fields.EmailField(required=True)

自定义错误信息error_messages

class F1Form(forms.Form):
 username = fields.CharField(max_length=18,
 min_length=6,
 required=True,
 error_messages={
   'required':'用户名不能为空',
   'min_length':'用户名过短',
   'max_length':'用户名过长'
 }
 )

html的调用

views部分:

def rege(req):
 obj = F1Form()
 return render(req,'rege.html',{'OBJ':obj})

html部分:

<form action="">
 <p>{{ OBJ.username }}</p>
 <p>{{ OBJ.pwd }}</p>
 <p>{{ OBJ.age }}</p>
 <p>{{ OBJ.email }}</p>
</form>

后台数据验证:

obj = F1Form(req.POST)
if obj.is_valid(): #判断传来的值是否通过验证
 models.UserInfo.objects.create(**obj.cleaned_data) #将值写入数据库

~需要注意的是create(**obj.cleaned_data)方法写入数据库的方式,是在forms提交的name名跟数据库的一致才可以.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python排序搜索基本算法之插入排序实例分析
Dec 11 Python
基于MTCNN/TensorFlow实现人脸检测
May 24 Python
python 字典中文key处理,读取,比较方法
Jul 06 Python
10个Python小技巧你值得拥有
Sep 29 Python
浅谈PYTHON 关于文件的操作
Mar 19 Python
Python拆分大型CSV文件代码实例
Oct 07 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
Oct 25 Python
使用Python的datetime库处理时间(RPA流程)
Nov 24 Python
python实现简单飞行棋
Feb 06 Python
python检查目录文件权限并修改目录文件权限的操作
Mar 11 Python
python为什么要安装到c盘
Jul 20 Python
python 实现图片修复(可用于去水印)
Nov 19 Python
python celery分布式任务队列的使用详解
Jul 08 #Python
Python利用matplotlib做图中图及次坐标轴的实例
Jul 08 #Python
Python数据类型之列表和元组的方法实例详解
Jul 08 #Python
pandas对dataFrame中某一个列的数据进行处理的方法
Jul 08 #Python
Python实现的统计文章单词次数功能示例
Jul 08 #Python
用python建立两个Y轴的XY曲线图方法
Jul 08 #Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
Jul 08 #Python
You might like
PHP遍历并打印指定目录下所有文件实例
2014/02/10 PHP
php+ajax无刷新上传图片实例代码
2015/11/17 PHP
Yii框架布局文件的动态切换操作示例
2019/11/11 PHP
PHP获取真实IP及IP模拟方法解析
2020/11/24 PHP
jQuery 各种浏览器下获得日期区别
2008/12/22 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
40个有创意的jQuery图片、内容滑动及弹出插件收藏集之一
2011/12/31 Javascript
JavaScript DOM节点添加示例
2014/07/16 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
深入理解vuex2.0 之 modules
2017/11/20 Javascript
AngularJS创建一个上传照片的指令实例代码
2018/02/24 Javascript
vue.js中proxyTable 转发请求的实现方法
2018/09/20 Javascript
Vue数据驱动表单渲染,轻松搞定form表单
2019/07/19 Javascript
jQuery插件实现图片轮播效果
2020/10/19 jQuery
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
[32:07]完美世界DOTA2联赛PWL S3 LBZS vs Rebirth 第一场 12.16
2020/12/17 DOTA
Python中的字符串替换操作示例
2016/06/27 Python
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
Python 'takes exactly 1 argument (2 given)' Python error
2016/12/13 Python
Python设计实现的计算器功能完整实例
2017/08/18 Python
使用Django2快速开发Web项目的详细步骤
2019/01/06 Python
Python可变参数会自动填充前面的默认同名参数实例
2019/11/18 Python
Python使用socket_TCP实现小文件下载功能
2020/10/09 Python
用CSS3实现Win8风格的方格导航菜单效果
2013/04/10 HTML / CSS
HTML5 Canvas实现文本对齐的方法总结
2016/03/24 HTML / CSS
2014年教师节座谈会发言稿
2014/09/10 职场文书
五年级学生期末评语
2014/12/26 职场文书
2015年度服装销售工作总结
2015/03/31 职场文书
《我和小伙伴》教学反思
2016/02/20 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP
MySQL 8.0 驱动与阿里druid版本兼容问题解决
2021/07/01 MySQL
Java 轮询锁使用时遇到问题
2022/05/11 Java/Android