1 .登录页面1.1我的代码#views.py
#登录视图defuser_login(request ) : if request.method==' post ' : username=request.post.get ' ' username ' username=username,password=password ) if user : if user.is _ active 3360 # log in ) password ) ) ust, u active 3360用户(returnhttpresponseredirect (/PP dash/home/' ) else:returnhttpresponse ) youraccountisnotactive. else 3360打印(invalidlogindetail : (,(1) ).format (username,password ) )返回httpresponse (invalidlonse )
{ % extends ' PP dash/base.html ' % } { % load static % } { % block title _ block % } user _ log in { % end block % } { % bload -用户登录页面--divclass=' container ' divclass=' row ' form class=' col-6m-5 ' id=' log in _ form ' action=' mmm 标签输入类型=' text ' class=' form-control ' name=' username ' size divdivclass=' form-group '标签密码/路径label input type=' password ' class=' form-control ' name=' password ' size=' 30 ' placeholder=' password ' smallid div buttontype=' submit ' class=' BTN BTN-primary ' value=' submit ' submit ' su use -信息不多的空白--brbrbrbr{% endblock %} #
from django.contribimportadminfromdjango.urlsimportpath,includefromppdashimportviewsurlpatterns=[ PP dash/',path] path
#base.html
aclass=' float-right BTN-primary MX-1 ' href='/user _ log in/'登录/aclass=' float-right BTN-secondary Mary a zh-受撒娇烟草/3.1/topics/auth/default/# django.contrib.auth.views.logie ws
1.3代码错误的登录(request,password )错误地写为登录(username,password )
2 .登录的APP 2.1装饰器@login_required的最简单方法是利用装饰器@login_required控制权限。 例如:
#创建成绩查询接口- all @ log in _ requireddefsearch _ subject _ score (request ) : score _ list=subject _ score.objech context={ ' score _ list ' : score _ list } 2.2用户未登录重定向
在#setting.py中设置LOGIN_URL后,未登录的用户会自动跳转到“/user_login/”。
LOGIN_URL='/user_login/' 3.注销页面: #views.py
logout不需要编写template模板,而是使用重定向来重定向httpresponseredirect ()/user_login/) )。
#注销页面@ log in _ required defuser _ logout (request ) :logout ) request ) returnhttpresponseredirect ((/user _ ler )
from django.contribimportadminfromdjango.urlsimportpath,includefromppdashimportviewsurlpatterns=[ PP dash/',path] path
pa href='/user _ logout/' user _ logout/a/p #已注销的APP位置:主要用于注销当前用户。
登录时仅显示注销,注销时仅显示登录。 -添加登录注销功能--{ % if user.is _ authenticated % } welcome { { user.username }.aclass=' float-right BTN-Sese pleaseloginfirst.aclass=' float-right BTN-primary MX-1 ' style=' href='/user _ log in/'登录/a {% endif %} -添加登录注销功能并退出-