2019-05-27 13:53:15 1230浏览
今天千锋扣丁学堂Python培训老师给大家分享一篇关于Django框架自定义session处理操作示例详解,结合实例形式分析了Django框架session操作的原理以及基于session的登陆、验证等相关操作技巧,下面我们一起来看一下吧。
| auth_group | auth_group_permissions | auth_permission | auth_user | auth_user_groups | auth_user_user_permissions | blog_content | django_content_type | django_session | django_site
class UserID(models.Model): login_id=models.CharField(max_length=32) login_pwd=models.CharField(max_length=32,blank=False) nickname=models.CharField(max_length=50)
def checklogin(request):
""" 用户登录简易判断 """
try:
login_id=request.POST.get('user','')
userpwd=request.POST.get('password','')
existuser=models.UserID.objects.get(login_id=login_id,login_pwd=userpwd)
#假设存在此用户,就要给session 赋值
request.session['myuser']=existuser
except:
.....
def check_session(func):
''' check user session '''
def wrapper(request,*args, **kv):
userinfo=request.session.get('myuser',None)
if not userinfo:
return HttpResponseRedirect('/login') #没有登录,则跳转到登录页面
return func(request,*args, **kv)
return wrapper
@check_session
def get_all_infomation(request):
context={}
context.update(csrf(request))
......
return render_to_response('customer/all_information.html',context)
def logout(request):
try:
del request.session['myuser']
except KeyError:
pass
return HttpResponseRedirect('/')
【关注微信公众号获取更多学习资料】 【扫码进入Python全栈开发免费公开课】