Python Django-轻松刷新会话

Python Django-轻松刷新会话,python,django,templates,session,Python,Django,Templates,Session,我有一个关于刷新会话的问题! 当我使用PHP使会话过期时,我只需要将sessionmaintenance.PHP放在文档顶部,有没有一种简单的方法可以在Django模板中执行相同的操作,这样我就不必在每个视图中都执行此操作 示例视图代码: @login_required def index(request): request.session.set_expiry(30) testvar="Hi!" return render(request, 'testapp/index

我有一个关于刷新会话的问题! 当我使用PHP使会话过期时,我只需要将sessionmaintenance.PHP放在文档顶部,有没有一种简单的方法可以在Django模板中执行相同的操作,这样我就不必在每个视图中都执行此操作

示例视图代码:

@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 %}
{%if user.u经过身份验证%}
{{request.user.username}{{request.user.first_name}
{%endif%}
{%request.session.set_expiration(30)%}
{%block content%}
{%endblock%}

将会话刷新合并到my base.html中,这样我的视图代码看起来更干净,而且我不必重复太多内容。

这可能不是您想要的,但是您是否签出了 可用于Django设置的参数

它以秒为单位设置会话cookie的硬限制,如下所示:

SESSION_COOKIE_AGE = 30

这不是在模板中应该做的事情;这些是向用户呈现数据的毛发。例如,你可能会考虑定制中间件。当然,你是对的,我对Django还有点新的尝试,但我会研究中间件。看一看,你肯定会发现你在寻找什么,为了立即对读者有所帮助(并避免),我们更喜欢的答案是直接提供至少一个可靠的解决方案摘要,以及用于提供附加信息的链接。