能成功登录和注册并实现页面之间的跳转

前提:能成功安装基础的Django

创建应用并添加到项目中

python .\manage.py startapp user

创建存放模板的目录并添加到项目中

欢迎界面

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>陈十一yi的主页</title>
</head><body><h1>欢迎登录</h1><h3>您好!欢迎您,{{name}}</h3></body>
</html>

用户登录界面

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>陈十一yi-用户登录</title>
</head><body><form method="POST" action="/login/">{%csrf_token%} 用户名:<input type="text" name="username" /><br/> <br/> 密&nbsp;&nbsp;码:<input type="password" name="password" /><br/><button type="submit">登录</button>&nbsp;&nbsp;&nbsp;&nbsp;<a href="/reg/">注册新用户</a>{{ msg }}</form>
</body></html>

注册界面

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>用户注册</title>
</head><body><form method="POST" action="/reg/">{%csrf_token%} 用户名:<input type="text" name="username" /><br/>密&nbsp;&nbsp;码:<input type="password" name="password" /><br/> 邮&nbsp;&nbsp;箱:<input type="text" name="email" /><br/><button type="submit">注册</button> {{ msg }}</form>
</body></html>

定义视图


from django.shortcuts import render,redirect
from django.contrib.auth.models import User
from django.contrib.auth import login,logout,authenticate
# Create your views here.
#登录
def loginView(request):if request.method=="POST":username=request.POST.get("username")password=request.POST.get("password")if User.objects.filter(username=username):user=authenticate(username=username,password=password)if user:if user.is_active:login(request,user)# msg="登录成功"request.session['status']=Truerequest.session['uname']=usernamerequest.session.set_expiry(300)return redirect("/index/")else:       msg="用户名密码错误"else:msg="用户名不存在"return render(request,"login.html",locals())        #注册
def regView(request):if request.method=="POST":username=request.POST.get("username")password=request.POST.get("password")email=request.POST.get("email")if User.objects.filter(username=username):msg="用户名已存在"else:user=User.objects.create_user(username=username,password=password,email=email)msg="注册成功"return redirect("/login/")return render(request,"register.html",locals())##主页
def index(request):return  render (request,"index.html",{"name":request.session.get('uname')})

添加路由

from django.contrib import admin
from django.urls import path
from user.views import loginView,regView,indexurlpatterns = [path('admin/', admin.site.urls),path('login/',loginView),path('reg/',regView),path('index/',index),
]

验证

web登录127.0.0.1:8000/login用创建的用户没有点注册即可创建用户


注册新用户

登录新用户

Django的用户登录和注册相关推荐

  1. Django用户登录与注册系统

    1.1.创建项目和app django-admin startproject mysite_loginpython manage.py startapp login 1.2.设置时区和语言 Djang ...

  2. django Auth用户登录

    django Auth用户登录 from apps.子应用名.models import UserDetails, User from django.contrib import auth from ...

  3. PHP+Mysql 实现用户登录,注册界面

    目标: 实现用户的登录 .注册 .修改密码.重置密码.添加书签,显示书签,删除书签 等功能 进一步目标: 实现对 用户输入信息的控制,具体表现在 对注册信息.登录信息的 的过滤,具有简单的防sql注入 ...

  4. 使用PHP实现用户登录和注册的功能

    登陆界面 login.PHP [html] view plaincopy <form action="logincheck.php" method="post&qu ...

  5. jsp java servlet_jsp+java ,servlet如何实现用户登录和注册页面

    jsp+java servlet实现简单用户登录(使用数据库,包括注册页面) 功能介绍 本项目通过使用jsp和servlet实现简单的用户登录.主要逻辑为:如果用户不存在,则首先进行注册(注册信息同步 ...

  6. 基于IO流读取的 完成 用户登录,注册,修改,查看所有用户,删除功能

    Controller import java.util.Scanner;/*** 视图层* 完成用户登录,注册,修改,删除功能*/ public class Controller {/*** 字符输入 ...

  7. MD5算法原理简要介绍并采用C#应用在桌面应用系统的用户登录与注册中

    MD5算法原理简要介绍并采用C#应用在桌面应用系统的用户登录与注册中 接上文,本文简要介绍一下MD5加密算法的原理,并采用C#实现MD5算法的加密与解密过程,将这一实现过程应用在我自己开发的桌面办公应 ...

  8. 用python写注册登录界面web_用Python实现web端用户登录和注册功能

    这篇文章主要介绍了用Python实现web端用户登录和注册功能的教程,需要的朋友可以参考下 用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通 ...

  9. python123注册登录_用Python实现web端用户登录和注册功能的教程

    用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通过API把用户注册这个功能实现了: _RE_MD5 = re.compile(r'^[0-9 ...

最新文章

  1. 154 万 AI 开发者用数据告诉你,中国 AI 如何才能弯道超车?| 中国 AI 应用开发者报告...
  2. hive快还是mysql快_HBase相对Hive查询速度快的对比
  3. 计算机5G英语文献,5G移动网络外文文献翻译2018中英文.docx
  4. mysql测试spring事务是否生效
  5. Nginx开发从入门到精通
  6. DHTML【5】--HTML
  7. Keil | 使用Register Windows测量函数的执行时间
  8. Linux入门——文本处理三剑客之gnu awk
  9. 类的加载、连接和初始化
  10. 兔子繁殖问题:一对兔子从出生后第三个月开始,每月生一对小兔子。小兔子到第三个月又开始生下一代小兔子。假若兔子只生不死,一月份抱来一对刚出生的小兔子,问一年中每个月各有多少对兔子(C++)(迭代法)
  11. cocos2d-x 从win32到android移植的全套解决方案
  12. Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs
  13. 注册石墨文档无法连接服务器,石墨文档没有访问权限是怎么回事?权限解决方法看这里!...
  14. 华硕e202s安装linux系统,华硕笔记本E202S原装win10系统可以改win7吗?
  15. 2019年暑期集训总结
  16. zip压缩包带有密码如何解压
  17. 【二分法】计蒜客习题 切割钢管
  18. 福大计算机专硕扩招,【今日话题】福州大学数计学院研究生又又又扩招?什么是拟录取补录?...
  19. fgsea进行GSEA富集分析
  20. sql镶嵌查询_标准SQL嵌套查询语句

热门文章

  1. 易观千帆 | 2022年12月银行APP月活跃用户规模盘点
  2. 程序猿 常规SQL面试题
  3. 焱融云超融合+IBM云管平台=新中新IaaS新模式
  4. 熊猫图表 连接mysql_自定义熊猫图和图表的5种简单方法
  5. 舟曲县中等专业学校计算机专业的座位,天津现代职业技术学院赴甘南进行对口帮扶工作...
  6. ixwebhosting优缺点分析
  7. 气体净化与特种气体除杂——吸附
  8. 大多数程序员缺少钻研精神
  9. /usr/bin/ld:找不到 -lboost_serialization
  10. 百度蜘蛛问题解析说明