国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Django > django表单验证怎么用

django表单验证怎么用

Django表单验证

头像

silencement

2019-07-27 09:49:134395浏览 · 0收藏 · 0评论

1, 在视图views.py中引入forms模块 from django import forms,特别注意是forms,加s

2, 然后创建一个类继承django的Form class biaodan(forms.Form):

3, 编写自定义的表单验证规则, forms模块中提供了许多内置的验证字段如, 针对字符串使用CharFiled,针对邮箱使用 EmailFiled,针对url地址使用URlFiled,数字字段,ip类的字段等等, 每一个字段内我们还可以设置验证条件,比如,是否要求字段可以为空,添加验证条件required=True,表示不能为空,max_length=5,字符数,min_length最小字符数,error_messages={},自定的错误信息,字典形式,键为验证条件的字段,错误信息自己可以随便写,针对邮箱有一个错误信息字段为invalid,用来专门写邮箱验证错误后的提示信息,其实错误信息可以自己不编写,模块中有默认的验证错误返回信息,不过是英文的,为了更好的用户体验,建议自己定义

比如我们定义一个用户的验证

django框架没有手机号的验证规则可以自定义添加

# 编写自定义验证规则def mobile_check(value):
    res = re.match('^1[356789]\d{9}$', value)    if not res:        # 自定义规则不抛异常表示通过
        raise ValidationError('手机号码格式错误')class bd(forms.Form):
    mobile = forms.CharField(
        required=True,        # 使用自定义验证规则
        validators=[mobile_check],
        error_messages={            'required': '手机号为必填项',
        },
    )
    user = forms.CharField(
        required=True,
        max_length=4,
        min_length=2,
        error_messages={'required': '不能为空',  'max_length': '最长不能超过4个字符', 
        'min_length': '最小长度为2'
        }
    )

4, 验证类编写好以后我们就可以,编写逻辑逻辑处理模块了

def test(request):
    if request.method == 'POST':
        f = bd(request.POST) # 使用bd类验证请求过来大的信息
        if f.is_valid():    # is_valid()返回验证是否通过的布尔值
            # print(f.cleaned_data)  # cleaned_data 返回验证通过后的所有数据,字典形式
            # 可以执行数据库存储操作
            return JsonResponse(f.cleaned_data)
        else:
            return render(request, 'kanyun/test.html', {'info': f.errors})  # errors 获取验证错误信息
    elif request.method == 'GET':
        return render(request, 'kanyun/test.html')

通过验证后的返回的cleaned_data数据,可以进行对数据库的存储操作
如果是登陆则可以查询数据库对比,成功后可以执行跳转操作

前端代码,前端的input的输入框下要有接收错误信息的标签模块用来接收错误提示信息

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>From模块验证表单模块使用方法访问页面</h1>
<form action="{% url 'kanyun:test' %}" method="post">
    {% csrf_token %}
    <div>
        用户名:<input type="text" name="mobile"/>
        <span>{{ info.user }}</span>
    </div>
    <div>
        密码:<input type="text" name="user"/>
        <span>{{ info.pwd }}</span>
    </div>
    <button type="submit">提交</button>
</form>
<h1>自动创建表单</h1>

</body>
</html>
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

美国伦理〈欲奴3)| 小婕子伦流澡到高潮H动漫| 三个男人躁我奶头好舒服| WWW.77.GOVCN| 电影《乳妓》在线观看| 荷兰日B赛现场视频| 美国A片巜禁忌5| 菠萝蜜在线观看免费播放电视剧 | 一边摸上面一边敷面膜| 免费观看已满十八岁电视剧高清版| 数字人民币是什么意思| 老头在树林里揉我的乳| 妈妈你真棒插曲快来救救我电影 | 《性房纵欲》在线观看| 憋尿白丝小肚子凸起高冷知乎| 《高压监狱5》完整版| 打扑牌不盖被子怎么办| 吻戏| 7777777亚洲和欧洲尺码表| 妈妈的绣感7| 蜜桃| 滢滢的日记1~15笔趣阁| 汁液横流BY笔趣阁| 公在厨房撕开奶罩吸奶头| 善良的公与媳HD中文| 扌喿辶畐和扌喿辶的区别| 无人区6高清免费追剧软件介绍| 男生将78申请女生的定眼| 法国空乘伦理2| 父女一起到达巅峰的小说| 《枕边欢情》电影免费观看| 女生给男生吃小头头| 初中全封闭学校| 白木优子| 大雷QQ弹弹跳舞| 两只奶头被老头吸肿了| 《疯狂伴娘》在线观看| 妻子的谎言片尾曲| 《开裆裤》法国1980年 | 《交换做爰》在线观看| 国外不堪入目的演唱会