zoukankan      html  css  js  c++  java
  • django from表单验证

    django from表单验证

     

    实现:表单验证

    工程示例:

    urls.py

    1
    2
    3
    4
    5
    6
    7
    8
    9
    from django.conf.urls import url
    from django.contrib import admin
    from app01 import views
     
     
    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^f1.html$', views.f1),
    ]

    settings.py

    STATIC_FILES_DIRS = (
        os.path.join(BASE_DIR,'static'),
    )

    views.py

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    from django.shortcuts import render
    from django.shortcuts import redirect
    from django.shortcuts import HttpResponse
    from app01 import models
     
    from django import forms
    from django.forms import fields
     
     
    class F1Form(forms.Form):
        user = fields.CharField(
            max_length=18,
            min_length=6,
            required=True,
            error_messages={'required': '用户名不能为空',
                            'max_length': '太长了',
                            'min_length': '太短了'
                            }
        )
     
        pwd = fields.CharField(
            required=True,
            min_length=32
        )
     
        age = fields.IntegerField(
            required=True,
            error_messages={
                'required': '邮箱不能为空',
                'invalid': '邮箱格式错误',
            }
        )
     
        email = fields.EmailField(
            required=True,
            min_length=8
        )
     
     
    def f1(request):
        if request.method == 'GET':
            obj = F1Form()
            return render(request, 'f1.html', {'obj': obj})
        else:
            obj = F1Form(request.POST)
            # 是否全部验证成功
            if obj.is_valid():
                # 用户提交的数据
                print('验证成功', obj.cleaned_data)
                return redirect('http://www.baidu.com')
            else:
                print('验证失败', obj.errors)
                return render(request, 'f1.html', {'obj': obj})

    f1.html

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <form id="fm" action="/f1.html" method="POST">
        <p>用户{{ obj.user }}{{ obj.errors.user.0 }}</p>
        <p>密码{{ obj.pwd }}{{ obj.errors.pwd.0 }}</p>
        <p>年龄{{ obj.age }}{{ obj.errors.age.0 }}</p>
        <p>邮箱{{ obj.email }}{{ obj.errors.email.0 }}</p>
        <input type="submit" value="提交" />
    </form>
    <script src="/static/js/jquery-3.1.1.js"></script>
     
    </body>
    </html>
  • 相关阅读:
    滚动监听+导航固顶
    选项卡 || 图片切换
    绝对定位下如何居中?
    选项卡+轮播的实现
    设置mysql 及其他应用程序 自动启动
    边框阴影 模糊值 x轴偏移值 y轴偏移值 模糊半径 阴影半径 || 颜色 insect,其中阴影半径可以为负值,意思是增加或减少指定数值的阴影半径
    form表单中的 下拉菜单 所有的省份
    媒体查询 屏幕超过页面上版心的宽度时 ,(也就是所有内容能显示出来),不让它有滚动条 【解决了因为banner图的原因出现滚动条的问题】
    jenkins 安全权限及注册新的测试角色使用
    git基础概念(和svn的优劣)
  • 原文地址:https://www.cnblogs.com/zjltt/p/7526006.html
Copyright © 2011-2022 走看看