新手,在练习开发一个论坛,想在用户登陆状态下能够发表帖子,跳转页面后也要保持用户登陆状态。
跳转页面后为什么就不是登陆状态的?session是一直有效的
django
自带的用户认证系统就可以了。
其中 User
提供 authenticate(username,password)
和login(request,user)
两个方法用来认证和登入,
也可以用 login_required
装饰器控制是否需要登录的 view
。
可以参考 http://www.cnblogs.com/esperyong/archive/2012/12/20/2826411.html
https://docs.djangoproject.com/en/1.6/topics/auth/default/#authentication-in-web-requests
Django
中判断用户是否登录可以使用is_authenticated()
方法。
if request.user.is_authenticated():
# Do something for authenticated users.
else:
# Do something for anonymous users.
默认情况下Django
会将Session
保存到数据库的`django_session`表,因此在不过期的情况下始终会保持用户的登录状态。
具体使用方式可参考:https://github.com/jacobian-archive/djangobook.com/blob/master/chapter14.rst