如果会话设置为 true,则打开一个 div

Posted

技术标签:

【中文标题】如果会话设置为 true,则打开一个 div【英文标题】:open a div if session set to true 【发布时间】:2013-09-09 08:03:27 【问题描述】:

views.py

def edit_report(request, report_id):

    user = request.user
    if 'report_id' in request.session:
        del request.session['report_id']
    try:
        member = Members.objects.get(member=user)
        account_user = member.user
    except:
        account_user = user.id
    request.session['report_id'] = report_id
    request.session['account_user'] = account_user
    request.session["edit_report"] = True  
    return redirect('method_name')

在我的应用程序中单击按钮时,它需要 edit_report 方法,如果应用程序通过该方法运行 request.session["edit_report"] 会话变为 True 它在像这样的视图中提到 request.session["edit_report"] = True.我想签入 javascript如果该会话是真的,我想打开一个隐藏的 div(使 div 显示内联)。如何使用 django 来做到这一点。

【问题讨论】:

你的 html/javascript 代码在哪里? 【参考方案1】:

如果您在TEMPLATE_CONTEXT_PROCESSORS 设置中有django.core.context_processors.request,您将可以访问模板中的request 变量。

然后可以在模板中给request.session.edit_report赋值一个js变量,像这样:

<script type="text/javascript"> 
   var edit_report =  request.session.edit_report|yesno:"true,false" ;
</script>

然后在您的 javascript 代码中使用 edit_report 变量。

另见:

django request in template How can I change the way a boolean prints in a django template?

希望对您有所帮助。

【讨论】:

以上是关于如果会话设置为 true,则打开一个 div的主要内容,如果未能解决你的问题,请参考以下文章

在融云 IMkit 会话界面基础上添加消息已读未读

Cookie

ASP.NET 通用处理程序和会话

在 PHP 中重新打开会话

如果会话超时,如何在 MVC 中的 jquery ajax 调用后重定向到新页面?

只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态...