繁体   English   中英

在前端html页面中的Jinja2 / flask中分配会话变量

[英]Assign a session variable in Jinja2 / flask in front end html page

你好我有一个选择/选项html的问题,你可以选择页码,所以第1页的100,2的200等...然后转到第1,2,3页...

一切都在以下代码中工作,除了在选择按钮内部,点击您要去的页面后,刷新页面后,它返回到第1页,它始终显示:第1页,共100页,即使实际上在网址中,页码是正确的。 我应该使用会话变量,但问题是我很难理解如何在html页面中直接使用Flask / Jinja2。 有人可以帮忙吗?

使用{% set session['page'] = page %}然后{{ session['page'] }}它会给我语法错误:

TemplateSyntaxError: expected token 'end of statement block', got '['

{% set session['page'] = page %}
    <select onchange="window.location.href=this.value">

        {%- for page in range (1,(form.total_PAGE.data | int) + 1 ) %}

            <option value="{{ page }}">{{ session['page'] }}/{{ form.total_PAGE.data }}</option>
        {%- endfor %}
    </select>

通常,您不能使用set分配对象属性,也不能使用obj['attr']obj.attr语法(请参阅文档 )。 但是,您可以启用表达式语句扩展 ,然后使用dict update设置属性,如下所示:

{% do session.update({'page': page}) %}

但正如评论中已经说明的那样,这并没有多大意义,可以使用其他方法更清晰地解决。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM