"{{ 'a+rwx' if '{{ item }}' == '{{ airflow_dag_folder }}' else 'u+rwx,g+rx,o+rx' }}"
这是我想要比较的,但它总是返回u + rwx,g + rx,o + rx。希望它在匹配时返回+ rwx,但即使item与airflow_dag_folder相同,它也不会返回正确的内容。
答案 0 :(得分:2)
您正在使用Jinja2表达式。 Jinja2表达式中的变量由它们的名称引用(并且没有引号)。
在表达式中,您将字符串{{ item }}
与字符串{{ airflow_dag_folder }}
进行比较。这两个字符串不相等,因此您始终可以获得else语句中定义的值。
改为使用:
"{{ 'a+rwx' if item == airflow_dag_folder else 'u+rwx,g+rx,o+rx' }}"