目录
-
cookie与session的区别
cookie和session的区别与联系 区别 session将数据存储与服务器端 cookie存储在客户端 cookie 存储在客户端,不安全,sess存储在服务器端,客户端只存 sesseionid,安全 cookie在客户端存储值有⼤⼩的限制,⼤约⼏kb。session没有限制 联系 千锋python学院 session 基于cookie
-
设置
⾸先在settings.py中有如下配置(系统默认) INSTALLED_APPS = [ 'django.contrib.sessions', ] MIDDLEWARE = [ 'django.contrib.sessions.middleware.SessionMiddleware', ] 2. 进⾏数据迁移,⽣成session使⽤的数据库表
-
添加
def doregister(request): username = request.POST.get('username') password = request.POST.get('password') email = request.POST.get('email') user = User() user.username = username user.password = md5(password.encode('utf8')).hexdigest() user.email = email user.save() # 设置session request.session['username'] = username return render(request,"common/notice.html",context={ 'code':1, 'msg':'注册成功', 'url':'three:index', 'wait':3 })
-
获取
def index(request): # session获取 username = request.session.get('username') return render(request,'three/index.html',context= {'username':username})
-
删除
session删除 clear() 清空所有session 但是不会将session表中的数据删除 flush() 清空所有 并删除表中的数据 logout() 退出登录 清除所有 并删除表中的数据 del req.session['key'] 删除某⼀个session的值 def logout(request): request.session.flush() return redirect(reverse("three:index")) session过期时间 req.session.set_expiry(5)