网站建设合同的要素,平面设计网站首页,wordpress杰奇,视频网站如何做seo锋哥原创的Python Web开发 Django5视频教程#xff1a;
2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计57条视频#xff0c;包括#xff1a;2024版 Django5 Python we…锋哥原创的Python Web开发 Django5视频教程
2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计57条视频包括2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~、第2讲 Django5安装、第3讲 Django5创建项目(用命令方式)等UP主更多精彩视频请关注UP账号。https://www.bilibili.com/video/BV14Z421z78C/我们在开发一个网站的时候无可避免的需要设计实现网站的用户系统。此时我们需要实现包括用户注册、用户登录、用户认证、注销、修改密码等功能这还真是个麻烦的事情呢。
Django作为一个完美主义者的终极框架当然也会想到用户的这些痛点。它内置了强大的用户认证系统--auth可以实现上述需求。它默认使用 auth_user 表来存储用户数据。
前面我们已经通过数据迁移生成了用户权限认证系统的物流表里面包含系统用户表权限表用户组以及用户组权限关联表用户和组关联表用户权限关联表。 我们实现Auth认证系统里的用户注册的话用的是auth模版models.py里定义的User模型。 通过auth内置的User我们可以直接操作用户相关功能 首先urls.py里定义下映射
# 跳转注册页面path(auth/toRegister, helloWorld.views.to_register),# 提交注册请求path(auth/register, helloWorld.views.register), templates下新建auth目录再新建login.html和register.html两个页面用户注册后跳转到登录页面
register.html页面源码
!DOCTYPE html
html langen
headmeta charsetUTF-8title注册页面/title
/head
body
form action/auth/register methodpost{% csrf_token %}tabletrth用户注册/th/trtrtd用户名/tdtdinput typetext nameusername value{{ username }}/td/trtrtd密码/tdtdinput typepassword namepassword value{{ password }}/td/trtrtdinput typesubmit value提交/tdtdfont colorred{{ errorInfo }}/font/td/tr/table
/form
/body
/html
login.html页面源码临时的
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/title
/head
body
登录页面
/body
/html views.py实现to_register和register两个方法。新增用户用的是create_user判断用户是否存在通过filter
def to_register(request):跳转注册页面:param request::return:return render(request, auth/register.html)
def register(request):用户注册:param request::return:username request.POST.get(username)password request.POST.get(password)# 检验用户名是否存在result User.objects.filter(usernameusername)if result:return render(request, auth/register.html,context{errorInfo: 该用户名已存在, username: username, password: password})User.objects.create_user(usernameusername, passwordpassword)return render(request, auth/login.html)
测试浏览器输入 http://127.0.0.1:8000/auth/toRegister 输入用户名和密码点提交
auth_user表就会有用户数据 如果用户名重复则报错提示