Django cookie&session - 让浏览器记住你哦
在Django中,我们可以使用cookie和session来记住用户的浏览器。
- 使用cookie
Django提供了一个方便的装饰器django.contrib.auth.decorators.login_required
,可以用来要求用户登录才能访问某个视图。
from django.contrib.auth.decorators import login_required
@login_required
def my_view(request):
...
此外,我们也可以在代码中设置cookie:
def my_view(request):
# 设置cookie
response = HttpResponse("Hello, World!")
response.set_cookie('my_cookie', 'cookie_value')
return response
- 使用session
Django也提供了session框架,允许我们在多个页面请求中保持状态。
def my_view(request):
# 设置session
request.session['my_session'] = 'session_value'
return HttpResponse("Hello, World!")
在模板中,我们也可以使用session:
{% if request.session.my_session %}
<p>Session value is: {{ request.session.my_session }}</p>
{% else %}
<p>There is no session value.</p>
{% endif %}
- 删除cookie和session
def my_view(request):
# 删除cookie
response = HttpResponse("Hello, World!")
response.delete_cookie('my_cookie')
return response
def my_view(request):
# 删除session
if 'my_session' in request.session:
del request.session['my_session']
return HttpResponse("Hello, World!")
以上就是在Django中使用cookie和session的基本方法。
评论已关闭