gpt4 book ai didi

flask - 我可以在 Flask 模板中嵌套变量吗?

转载 作者:行者123 更新时间:2023-12-02 12:17:23 26 4
gpt4 key购买 nike

大家好,我在Flask中遇到了一个问题。mysql中有一个名为category的表,我查询了所有这些表,然后将它们传递给a.html,如下所示:

return render_template('admin_index.html', username=session.get('username'), categories=categories)

在 admin_index.html 中,我想列出所有这些,这是我的代码:

var _menus = {
"menus": [
{
"menuid": "1",
"icon": "icon-sys",
"menuname": "category",
"menus": [
{% for category in categories %}
{
"menuid": "{{ category.id }}",
"menuname":"{{ category.name }}",
"icon": "icon-users",
"url": "{{url_for('admin.category', id={{category.id}} _external=True) }}"
},
{% endfor %}
]
}
]
};

但是当我运行这个时,我收到一个错误:

jinja2.exceptions.TemplateSyntaxError: expected token ':', got '}'

我尝试删除 {{category.id }},结果没问题,我怀疑 Flask 模板中不允许嵌套变量,如下所示:

{{ a is {{ b }} }}

有什么办法可以嵌套它吗?

最佳答案

你已经进入了 jinja 表达式。因此执行以下代码:

url_for("admin.category", id={{category.id}} _external=True)

由于 { 它需要一个字典,因此会出现错误。

要使用category.id的值,只需省略大括号即可:

url_for("admin.category", id=category.id, _external=True)

另请注意,您在“_external”之前忘记了 ,

关于flask - 我可以在 Flask 模板中嵌套变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40330994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com