用Jinja2中的模板输出替换字符串

安德烈亚斯

Pelican中,页面的内容以形式传递到Jinja2模板page.content假设其中page.content包含一个string {REPLACEME}我现在如何{REPLACEME}用某些模板逻辑的结果替换此字符串,例如

{% for pub in publications %}
  {% set key, year, text, bibtex, doi, url, pdf, slides, poster = pub %}
  {% if "%s"|format(year) == "%s"|format(yr) %}
    <li id="{{ key }}">{{ text }}</li>
  {% endif %}
{% endfor %}

我的想法是,我想使用模板逻辑来呈现项目列表,但仍然能够决定该列表应在哪里出现page.content

我知道,有一个replace() 过滤器Jinja2的,但我无法弄清楚如何使new论点包含模板ouptut从上面。

安德烈亚斯

原来Jinja2中

{% macro bibtex_rendered() -%}
  {% for pub in publications %}
    {% set key, year, text, bibtex, doi, url, pdf, slides, poster = pub %}
    {% if "%s"|format(year) == "%s"|format(yr) %}
      <li id="{{ key }}">{{ text }}</li>
    {% endif %}
  {% endfor %}
{%- endmacro %}

然后,我可以在调用中使用已定义的宏replace

    {{ page.content | replace("{PUBLICATIONS}", bibtex_rendered()) }}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Jinja2用空格分隔字符串

来自分类Dev

用对象属性替换模板字符串中的键

来自分类Dev

用Java中的字符串替换字符串

来自分类Dev

包含模板中的Jinja2变量

来自分类Dev

在Jinja2中每3个字符在字符串中添加空格

来自分类Dev

如何在Jinja2中对字符串执行多次替换?

来自分类Dev

字符串中的jinja2加载模板:TypeError:未为此环境指定加载程序

来自分类Dev

concat字符串并使用jinja2进行迭代

来自分类Dev

jinja2迭代字符串数组

来自分类Dev

用数组替换模板中的字符串

来自分类Dev

用Django模板中的另一个字符串替换字符串

来自分类Dev

将JS变量替换为Jinja模板的字符串

来自分类Dev

Jinja2用'。'替换字符串。木匠

来自分类Dev

如果被{{delimiter}}包围,则不会输出Jinja2变量(字符串)

来自分类Dev

PHP中的模板字符串替换

来自分类Dev

如果jinja标记为字符串格式,如何在django和jinja2中使用它?

来自分类Dev

在Jinja2中每3个字符在字符串中添加空格

来自分类Dev

用其输出替换字符串中的命令

来自分类Dev

在Jinja2中,如何使单引号中的字符串突出显示为蓝色?

来自分类Dev

如何在Jinja2中对字符串执行多次替换?

来自分类Dev

取消引用jinja2字符串到var中?

来自分类Dev

用Excel中的字符串替换字符串

来自分类Dev

在 jinja2 模板列表中列出

来自分类Dev

Jinja2 模板 - 比较字符串

来自分类Dev

jinja2 在单引号中呈现字符串

来自分类Dev

将字符串拆分为 jinja2 中的单个字符数组

来自分类Dev

用带参数的自定义函数的输出替换 sed 中的日期字符串

来自分类Dev

Jinja2 将字典列表视为字符串

来自分类Dev

Python Jinja2 从字符串以某种样式呈现 HTML 模板

Related 相关文章

热门标签

归档