Templates 无法检查Ansible jinja2模板中大于条件的变量
我的jinja2模板为变量生成正确的值Templates 无法检查Ansible jinja2模板中大于条件的变量,templates,ansible,conditional-statements,comparison,jinja2,Templates,Ansible,Conditional Statements,Comparison,Jinja2,我的jinja2模板为变量生成正确的值 {{ vars[fruit | join("")] | default('ERR') }} 变量fruit的值为83.6,由Ansible的模板模块打印 我希望在jinja2模板中编写一个if条件,在这里我想检查变量的值 水果有70多种 {% if ( vars[fruit | join("")] | int ) > 70 %} 70多 {%endif%} 然而,“如果”条件在我期望它成功时失败了 我还尝试了以下方法: {% if ( vars[
{{ vars[fruit | join("")] | default('ERR') }}
变量fruit的值为83.6,由Ansible的模板模块打印
我希望在jinja2模板中编写一个if条件,在这里我想检查变量的值
水果有70多种
{% if ( vars[fruit | join("")] | int ) > 70 %}
70多
{%endif%}
然而,“如果”条件在我期望它成功时失败了
我还尝试了以下方法:
{% if ( vars[fruit | join("")] | int > 70 ) %}
我也试过了
{% if vars[fruit | join("")] | int > 70 %}
但是,没有一个成功。您能告诉我需要做些什么来满足if条件吗?int筛选器不接受带点的字符串。您应该使用舍入过滤器将其向下舍入,从而将其转换为浮点:
int筛选器不接受带点的字符串。您应该使用舍入过滤器将其向下舍入,从而将其转换为浮点:
{% if ( vars[fruit | join("")] | round(method='floor')) > 70 %}