我必须遵循以下方案:
python字典的python列表列表中的l = [a,b,c,...,n]
每个元素都是一个python字典,看起来像这样:
d = {}
d['type'] = 5
d['content'] = 'somestring'
现在,我希望所有字典作为主模板中的列表。但是,每个词典的内容应由子模板呈现。应使用哪种模板来呈现内容,应由字典的type变量定义。
关于使用Jinja2如何完成此操作的任何提示(如果有帮助,我正在通过Flask使用它。)
谢谢!
如果有人需要它:
{% for d in dicts %}
{% set template = d.type + '.html' %} {% include template %}
{% endfor %}
然后可以在模板中访问内容,如下所示:
{{ d.content }}
感谢freenode上#pocoo频道的donri!
问题内容: 我从Flask的Jinja2模板提供动态页面。现在,我在脚本标签内定义客户端模板,例如Jinja2克隆Nunjucks。问题是,客户端模板具有类似语法该Flask’s的 Jinja2的解释,而不是可以解释渲染的逐字。 如何使整个脚本块逐字呈现? 问题答案: 你可以禁用块内标签的解释:
问题内容: 我正在使用html,css,flask和jinja2创建网站。 我有一个在Flask服务器上工作的页面,显示了按钮和标签等,但是我没有加载CSS样式表。 我如何将样式表链接到jinja2模板。我在互联网上四处张望,但找不到答案。 这是css样式表链接;我应该更改此代码还是python代码? 这是我的烧瓶代码: 这是文件的位置: 问题答案: 所有公共文件(未处理的文件,例如模板或py
问题内容: 我想在我的Flask应用程序中包含一个sass编译器。有一种普遍接受的方法吗? 问题答案: Flask-Assets扩展(使用webassets库)可以用于此目的。以下是将其配置为使用SCSS的pyScss编译器(在Python中实现)的方法: 并在模板中包括以下内容: SCSS文件也将在调试模式下进行编译。 pyScss只支持SCSS语法,但也有其他过滤器(,和)使用原始的Ruby实
问题内容: 我使用Flask-Login 在模板中提供对象。我想编写一个宏来显示评论表单或登录链接,具体取决于用户是否登录。如果我直接在模板中使用此代码,它将起作用: 我将相同的代码放在宏中,然后将宏导入模板中。 当我尝试加载此页面时,出现的错误是: 当然,简单的解决方法是current_user作为参数传递并使用该参数(进行签名comment_form(user, form)),尽管这是一个非常
问题内容: 我正在为Flask和SQLAlchemy构建管理员,并且我想使用来将用于不同输入的HTML传递给我的视图。模板框架似乎会自动转义html,因此所有<“’>都将转换为html实体。如何禁用它以使HTML正确呈现? 问题答案: 理想的方法是 而不是完全关闭自动转义。
什么是模板引擎 在 Web 开发中,我们经常会使用到模板引擎。简单点来说,我们可以把模板看成是一个含有某些变量的字符串,它们的具体值需要在动态运行时(请求的上下文)才能知道。比如,有下面一个模板: <h1>Hello, {{ name }}!</h1> 其中,name 是一个变量名,我们用 {{ }} 包裹它表示它是一个变量。我们给 name 传不同的值,模板会返回不同的字符串。像这样,使用真实的