欲练此功必先自宫
||
||
||
||
||
带验证码的登录注册+注销
开始写django项目
在项目的文件夹目录 打开cmd
输入 django-admin startproject 项目名
添加环境 添加jdango包 添加sqlclient包
创建APP: python manage.py startapp App名字
在settings/INSTALLED_APPS 下添加APP的名字
setting/DATABASES 下修改
‘ENGINE’:‘django.db.backends.mysql’,
‘NAME’:‘数据库名称’,(打开cmd打开mysql客户端创建新的数据库:create database 数据库名)
‘HOST’:‘127.0.0.1’,
‘PORT’:‘3306’,
‘USER’:‘root’,
‘PASSWORD’:‘12345’,
在APP下新建文件夹templates
写login.html
{{ msg }}
{% csrt_token %}| 账号 | |
| 密码 | |
| 验证码 | {{ yzm }}看不清换一张 |
quit()
写成功的页面chenggong.html 带注销
注销
欢迎{{ user.username }}登录
在views.py中写函数
import random
import string
from aini.models import UserInfo
from django.shortcuts import render,HttpResponse,redirect
def get_yzm():
yzm = ‘’
aStr = string.ascii_letters+string.digits
for i in range(4):
yzm += random.choice(aStr)
return yzm
def login(request):
if request.method == ‘GET’:
yzm = get_yzm()
data = {
‘yzm’:yzm
}
request.session[‘yzm’] = yzm
return render(request,‘login.html’)
else:
username = request.POST.get(‘username’,’’).strip()
pwd = request.POST.get(‘pwd’,’’).strip()
yzm = request.POST.get(‘yzm’,’’).strip()
data = {}
if yzm.lower() != request.session.get(‘yzm’).lower():
data[‘msg’] = ‘验证码输入有误’
elif not UserInfo.objects.filter(username=username,pwd=pwd):
data[‘msg’] = ‘账号密码有误’
else:
user = UserInfo.objects.get(username=username,pwd=pwd)
data = {
‘username’ : user.username
}
id = user.pk
request.session[‘id’] = id
return redirect(’/datail/’)
yzm = get_yzm()
data[‘yzm’] = yzm
request.session[‘yzm’] = yzm
return render(request, ‘login.html’)
def datail(request):
id = request.session.get(‘id’,’’)
if id:
user = UserInfo.objects.get(pk=id)
data = {‘user’:user}
return render(request,‘chenggong.html’,data)
else:
return redirect(’/login/’)
#注销
def logout(request):
request.session.flush()
return redirect(’/login/’)
配置URL
from App名字.views import *
urlpatterns = [
path(‘admin/’, admin.site.urls),
path(‘login/’,login),
path(‘detil/’,detil),
path(‘logout/’,logout),
]
运行项目:python manage.py runserver
不宫也行
本文档详细介绍了如何使用Django框架创建一个包含验证码验证的登录、注册和注销功能的项目。首先,通过`django-admin startproject`创建项目,然后配置数据库连接,创建APP并设置视图。接着,建立验证码生成函数,并实现登录时的验证码验证。成功登录后,用户可以查看个人信息,同时提供注销功能清除session。最后,配置URL路由完成整个流程。
386

被折叠的 条评论
为什么被折叠?



