【发布时间】:2017-12-16 06:19:24
【问题描述】:
我需要遍历一个变量列表并将<debug nested for loop> 代码嵌入到一个jinja2 模板中。
这就是剧本的样子
vars:
env:
- dev
- prod
- staging
tasks:
- name: set variable
set_fact:
denv: 'dev'
- name: debug for loop
debug: msg='{% for i in env %} {{i}} {% endfor %}'
- name: debug nested for loop
debug: msg='{% if denv =='{% for i in env %} {{i}} {% endfor %}' %} yay {% else %} nay {% endif %}'
目标是遍历env 列表,如果值匹配denv,则打印yay,否则打印nay
关于如何更好地编写这个的任何想法?目前的写法是触发错误。
【问题讨论】:
-
就像使用
if和for处理任何其他语言一样。看起来像是儿童最基本的编程课程第一个月的问题。您发布的示例甚至令人痛苦。 -
如果您对您发布的某些代码(包含结构
if a=(for i in ...) then .. else ...)违反基本编程知识的评论感到深深的冒犯,那是您个人的问题。如果你按照常识写for i in ...; if a=f(i)... then ... else ...,你的编程“问题”就有了解决方案,虽然没有机会展示你的大嘴巴。