我对刷新会话有疑问! 当我使用PHP使会话过期时,我只需要在文档顶部使用sessionmaintenance.php,是否有一种简单的方法可以在Django模板中执行相同的操作,这样我就不必在每个视图中都这样做了? / p>
示例视图代码:
@login_required
def index(request):
request.session.set_expiry(30)
testvar="Hi!"
return render(request, 'testapp/index.html', {'testvar':testvar})
@login_required
def uploadview(request):
request.session.set_expiry(30)
etc...
我想做的是制作一个类似于此的base.html - 示例模板代码:
{% if user.is_authenticated %}
<h6>{{ request.user.username }} {{ request.user.first_name }}</h6>
{% endif %}
{% request.session.set_expiry(30) %}
{% block content %}
{% endblock %}
将会话刷新纳入我的base.html,以便我的视图代码看起来更干净,而且我不必重复自己。
答案 0 :(得分:0)
这可能不是你想要的,但你有没有检查过 可用于Django设置的SESSION_COOKIE_AGE参数?
它以秒为单位设置会话cookie的硬限制,如下所示:
SESSION_COOKIE_AGE = 30