备战秋招——记录自己学习的第六天(Django项目难点拆分——利用form定制实现用户验证)
2019-06-09 21:21
656 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_41643663/article/details/91357506
在之前的项目中,自己一直是在models中创建类,再利用Django生成数据库表,在前端利用form表单提交数据或者ajax提交数据之后,然后在后台利用拿到的数据,自己写正则表达式进行比较。这个过程是他别繁琐的。其实在Djano中有可以用form去进行验证,它具有十分强大的验证功能,下面我们利用form来验证一下用户登录(如果想和数据库的数据进行交互,我们只需要讲其取出,然后和后端拿到的前端数据进行比较即可,为了方便,这里仅采用取值的情况):
第一步,配置urls:
from django.contrib import admin from django.urls import path from app01.views import views #为了每个views之间不相互干扰,我们在app下穿件一个views文件夹,里面存放着一个个的views文件 urlpatterns = [ path('admin/', admin.site.urls), path('form.html/', views.index), ]
创建views:
from django.shortcuts import render from django import forms from django.forms import fields from django.core.exceptions import ValidationError # Create your views here. class UserForm(forms.Form): username = fields.CharField(label = '用户名') email = fields.EmailField(label = '邮箱') def clean(self): v1 = self.cleaned_data['username'] v2 = self.cleaned_data['email'] if v1 == 'zsp' and v2 == 'zsp@qq.com': pass else: raise ValidationError('用户名或密码错误!') return self.cleaned_data
def index(request): if request.method == "GET": obj = UserForm() return render(request,'form.html',{'obj':obj}) elif request.method == 'POST': obj = UserForm(request.POST) # 将后端的数据传入form中进行验证 obj.is_valid() obj.cleaned_data print(obj.cleaned_data) #将正确的数据在后端打印出来 return render(request,"form.html",{'obj':obj})
简单的设置一下templates中的前端页面:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/form.html/" method="post"> {{ obj.as_p }} # 也as_后面可以跟各种类型 <input type="submit" value="提交"> </form> </body> </html>
最后我们来看下效果图:
刚才发送的数据,后端也全部收到:
相关文章推荐
- 备战秋招——记录自己学习的第七天(Django项目难点拆分——利用modelform实现用户验证、修改用户信息)
- VUE+SSM 以VUE做项目前端,SSM做后端框架,难点在于数据的传输处理,下面我记录一下一个简单的登录退出功能的实现,如果有缺陷还请大佬指出,个人菜鸟 一个,正在学习当中,以此记录一下自己的学习
- django学习记录-django-1.5中简单地自定义自己的用户模型
- Android基础学习总结(十二)——利用Bmob实现用户账户体系(注册、登录、验证等)
- Django 博客项目02 Form验证+ 上传头像(预览)+Ajax用户注册
- JavaWeb学习记录(六)——用户登录功能之Session与验证码验证功能的实现
- 利用django oauth2_provider在自己的项目里实现token
- MVC3学习第七章 排山倒海第三变----利用MVC3实现数据验证以及完成用户数据的编辑
- Django框架学习笔记(16.利用ajax实现简易的验证)
- 自己在项目中的学习总结:利用工厂模式+反射机制+缓存机制,实现动态创建不同的数据层对象接口
- 自己实现 ASP.Net Form 验证
- WSS页面定制系列(4)--利用SmartForm和用户控件定制表单页面
- 【Java EE 学习 74 下】【数据采集系统第六天】【使用Jfreechart的统计图实现】【将JFreechart整合到项目中】
- 分别用(Windows/Form/Soap/WebService)实现用户身份验证(含示例代码下载)
- django开发项目实例3--用session是实现简单的登陆、验证登陆和注销功能
- **从今天开始利用博客记录自己的学习经历~!**
- Django学习笔记六:form表单实现评论(检验数据合法性)
- WSS页面定制系列(4)--利用SmartForm和用户控件定制表单页面
- Android多媒体学习九:利用MediaRecorder类实现自己的音频录制程序
- 异步提交form的时候利用jQuery validate实现表单验证