首页 > 解决方案 > 为什么“拒绝”过滤器在 ansible 中不起作用

问题描述

我正在尝试在 ansible 中运行以下代码

-debug:
   msg: {{ timediff| reject('search','2') | list }}

这里 timediff 是 jinja2 返回的列表。

但是可以显示

template error while templating string: no filter named 'reject'. String: {{ timediff | reject('search', '2') | list }}

这个错误。

我的设置:

ansible = 2.5.5
jinja2 = 2.6
python=2.7.13

如何解决此错误。请帮助。

标签: ansiblejinja2

解决方案


您使用的是过时的 Jinja2,特别是如果您查看过滤器的文档,reject您会看到:

2.7 版中的新功能。

升级。


推荐阅读