Django Form常用功能及代码示例


Posted in Python onOctober 13, 2020

Django的Form主要具有一下几大功能:

  • 生成HTML标签
  • 验证用户数据(显示错误信息)
  • HTML Form提交保留上次提交数据
  • 初始化页面显示内容

views.py

from django.shortcuts import render

# Create your views here.

from django.forms import Form
from django.forms import widgets
from django.forms import fields


# 对form表单进行数据验证
class LoginForm(Form):
  user = fields.CharField(required=True) # 不能为空
  pwd = fields.CharField(min_length=18)


def login(request):
  if request.method == "get":
    return render(request, 'login.html')
  else:
    obj = LoginForm(request.POST)#request.POST拿到的是POST的数据
    """
    is_valid
    1. 获取当前类中所有的字段
      -LoginForm实例化时候,放入
        self.fields = {
            'user':正则表达式,
            'pwd':正则表达式          
              }
    2.循环self.fields
    flag = True
    
    for k,v in self.fields.items():
      k是:user,pwd
      v是:正则表达式
      input_value = requests.POST.get(k)
      flag = False
    return flag
    
    """
    if obj.is_valid():
      print(obj.cleaned_data)#字典数据
    else:
      # print(obj.errors)#返回的是个err对象
      print(obj.errors)#返回的是个err对象

    return render(request,'login.html')

login.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<h1>用户登录</h1>

<form action="/login/" method="POST">
  {% csrf_token %}
  用户名 <input type="text" name="user">
  密码 <input type="password" name="pwd">
  <input type="submit" value="提交">

</form>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
举例介绍Python中的25个隐藏特性
Mar 30 Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 Python
python中Pycharm 输出中文或打印中文乱码现象的解决办法
Jun 16 Python
python2.7 mayavi 安装图文教程(推荐)
Jun 22 Python
在IPython中进行Python程序执行时间的测量方法
Nov 01 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
May 15 Python
Python pandas用法最全整理
Aug 04 Python
详解有关PyCharm安装库失败的问题的解决方法
Feb 02 Python
jupyter notebook oepncv 显示一张图像的实现
Apr 24 Python
Python使用pickle进行序列化和反序列化的示例代码
Sep 22 Python
工程师必须了解的LRU缓存淘汰算法以及python实现过程
Oct 15 Python
关于Python中进度条的六个实用技巧分享
Apr 05 Python
Python语言编写智力问答小游戏功能
Oct 13 #Python
Django Auth用户认证组件实现代码
Oct 13 #Python
通过代码实例了解Python3编程技巧
Oct 13 #Python
Python SQLAlchemy库的使用方法
Oct 13 #Python
Pycharm github配置实现过程图解
Oct 13 #Python
详解numpy.ndarray.reshape()函数的参数问题
Oct 13 #Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 #Python
You might like
提问的智慧
2006/10/09 PHP
PHP日期时间函数的高级应用技巧
2009/05/16 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
2011/07/17 PHP
PHP调用Webservice实例代码
2011/07/29 PHP
PHP逐行输出(ob_flush与flush的组合)
2012/02/04 PHP
php+ajax实现无刷新数据分页的办法
2015/11/02 PHP
PHP实现查询手机归属地的方法详解
2017/04/28 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
jquery入门必备的基本认识及实例(整理)
2013/06/24 Javascript
js实现身份证号码验证的简单实例
2014/02/19 Javascript
jQuery实现鼠标滑过链接控制图片的滑动展开与隐藏效果
2015/10/28 Javascript
jquery实现九宫格大转盘抽奖
2015/11/13 Javascript
JS组件Bootstrap Table表格行拖拽效果实现代码
2020/08/27 Javascript
易被忽视的js事件问题总结
2016/05/14 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
JS实现的五级联动菜单效果完整实例
2017/02/23 Javascript
Ionic + Angular.js实现图片轮播的方法示例
2017/05/21 Javascript
webpack教程之webpack.config.js配置文件
2017/07/05 Javascript
浅谈Vue.js 1.x 和 2.x 实例的生命周期
2017/07/25 Javascript
vue+swiper实现组件化开发的实例代码
2017/10/26 Javascript
Vue.js用法详解
2017/11/13 Javascript
vue cli 全面解析
2018/02/28 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
JS手写一个自定义Promise操作示例
2020/03/16 Javascript
使用python实现省市三级菜单效果
2016/01/20 Python
python+opencv实现动态物体追踪
2018/01/09 Python
Python面向对象之继承代码详解
2018/01/29 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
python 变量初始化空列表的例子
2019/11/28 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
2020/11/20 Python
HTML5如何为形状图上颜色怎么绘制具有颜色和透明度的矩形
2014/06/23 HTML / CSS
新西兰演唱会和体育门票网站:Ticketmaster新西兰
2017/10/07 全球购物
公证书样本
2014/04/10 职场文书
离婚被告代理词
2015/05/23 职场文书
2020年个人安全保证书参考模板
2020/01/08 职场文书