使用Jinja运算符严格过滤' in'

时间:2015-04-02 12:50:36

标签: python django jinja2

我想像下面那样进行严格的过滤:

  

{{dog in'dogga,cat'}}返回 false

如果我做错了,有没有办法获得这种严格过滤或纠正我?

1 个答案:

答案 0 :(得分:1)

你的Jinja版本是什么?以下两个结构对我来说都很好:

{{ 1 in [1, 2, 3] }} == True
{{ 1 in [18, 2, 3] }} == False

<强> [编辑]:

您将变量dog与字符串进行比较:

{{ dog in 'dogga, cat' }}

我假设您想要将字符串'dog'与项目列表进行比较,那么您需要先将字符串转换为列表(在Python中而不是在模板中执行此操作)并执行比较:

{{ 'dog' in ['dogga', 'cat'] }} == False

或者如果你真的想在模板中这样做:

{{ 'dog' in 'dogga, cat'.split()|map('trim') }} returns False
{{ 'dog' in 'dogga, cat, dog '.split()|map('trim') }} returns True