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编程-将Python程序转化为可执行程序[整理]
Apr 09 Python
Python利用ElementTree模块处理XML的方法详解
Aug 31 Python
利用python操作SQLite数据库及文件操作详解
Sep 22 Python
解决python selenium3启动不了firefox的问题
Oct 13 Python
PyQt5实现QLineEdit添加clicked信号的方法
Jun 25 Python
基于Django框架的权限组件rbac实例讲解
Aug 31 Python
python 实现任务管理清单案例
Apr 25 Python
python如何解析复杂sql,实现数据库和表的提取的实例剖析
May 15 Python
Python中有几个关键字
Jun 04 Python
Keras: model实现固定部分layer,训练部分layer操作
Jun 28 Python
Python使用sys.exc_info()方法获取异常信息
Jul 23 Python
python3:excel操作之读取数据并返回字典 + 写入的案例
Sep 01 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
《星际争霸II》全新指挥官斯台特曼现已上线
2020/03/08 星际争霸
PHP5/ZendEngine2的改进
2006/10/09 PHP
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
phpmyadmin里面导入sql语句格式的大量数据的方法
2010/06/05 PHP
phpmyadmin显示utf8_general_ci中文乱码的问题终级篇
2013/04/08 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
2015/12/22 PHP
Yii框架参数化查询中IN查询只能查询一个的解决方法
2017/05/20 PHP
脚本之家贴图转换+转贴工具用到的js代码超级推荐
2007/04/05 Javascript
javascript数组快速打乱重排的方法
2014/01/02 Javascript
node.js中的fs.fchmodSync方法使用说明
2014/12/16 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
Bootstrap树形组件jqTree的简单封装
2016/01/25 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
2016/03/11 Javascript
jQuery插件ajaxfileupload.js实现上传文件
2020/10/23 Javascript
BootStrap iCheck插件全选与获取value值的解决方法
2016/08/24 Javascript
给easyui的datebox控件添加清空按钮的实现方法
2016/11/09 Javascript
有关suggest快速删除后仍然出现下拉列表的bug问题
2016/12/02 Javascript
使用koa2创建web项目的方法步骤
2019/03/12 Javascript
详解js创建对象的几种方法及继承
2019/04/12 Javascript
vue2之简易的pc端短信验证码的问题及处理方法
2019/06/03 Javascript
Moment.js实现多个同时倒计时
2019/08/26 Javascript
Vue的click事件防抖和节流处理详解
2019/11/13 Javascript
[00:32]2016完美“圣”典风云人物:Maybe宣传片
2016/12/05 DOTA
python编码总结(编码类型、格式、转码)
2016/07/01 Python
Python tkinter模块中类继承的三种方式分析
2017/08/08 Python
python timestamp和datetime之间转换详解
2017/12/11 Python
使用C++扩展Python的功能详解
2018/01/12 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
Python基于Socket实现简易多人聊天室的示例代码
2020/11/29 Python
夜大毕业自我鉴定
2013/10/11 职场文书
工厂保安员岗位职责
2014/01/31 职场文书
人力资源管理专业自荐书范文
2014/02/10 职场文书
幼儿园欢迎词范文
2015/01/26 职场文书
Python控制台输出俄罗斯方块移动和旋转功能
2021/04/18 Python