python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Django Form

Django Form常用功能及代码示例

作者:py鱼

这篇文章主要介绍了Django Form常用功能及代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Django的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>

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

您可能感兴趣的文章:
阅读全文