网络编程
位置:首页>> 网络编程>> Python编程>> Django Form常用功能及代码示例

Django Form常用功能及代码示例

作者:py鱼  发布时间:2021-11-22 16:45:53 

标签: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>

来源:https://www.cnblogs.com/pyyu/articles/9281720.html

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com