Django Form Django Form常用功能及代码示例

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Django Form Django Form常用功能及代码示例

py鱼   2021-03-15 我要评论
想了解Django Form常用功能及代码示例的相关内容吗,py鱼在本文为您仔细讲解Django Form的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Django,Form,功能,下面大家一起来学习吧。

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>

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们