gpt4 book ai didi

jinja2 - 如果子字符串匹配,Jinja 加入字符串列表

转载 作者:行者123 更新时间:2023-12-01 22:53:27 27 4
gpt4 key购买 nike

是否可以在 jinja2 中做这样的事情:

my_list = ['foo1', 'bar1', 'foo2', 'bar2'] # could be any number of foo's and bar's
[i for i in my_list if 'foo' in i]

我正在查看 map 并加入,类似于:

{% my_list|map('???')|join(' ') %}

但是我找不到一个过滤器可以让我进行任何类型的通配符搜索。最接近的两个看起来像“sameas”和“equalto”,但它们不起作用。

最佳答案

如果您使用的是最新版本的 Jinja2(2.7 或更高版本),则有一个名为“select”的新过滤器,它似乎可以满足您的需求。 jinja.pocoo.org/docs/dev/templates/#select您可能必须为此编写自己的测试,并在实例化时将其传递给 jinja2 对象。

{{ foobars|select("test") }}

如果您使用的是更新版本(2.8 或更高版本),您还可以使用 block 赋值 http://jinja.pocoo.org/docs/dev/templates/#block-assignments

{% set my_foo_bars %}
{%- for item in my_list %}
{%- if item %}
{{item}}
{% endif -%}
{% endfor -%}
{% endset %}

如果您坚持使用旧版本(例如来自 google app engine 的 jinja2),如果可能的话,您最好在将其传递到模板之前进行处理。

关于jinja2 - 如果子字符串匹配,Jinja 加入字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25211739/

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