And*_*dyC 6 dictionary jinja2 ansible
以这个剧本 YAML:
---
- hosts: localhost
become: false
vars:
list_of_dicts:
- { key1: "cccc", key2: "dddd" }
- { key1: "aaaa", key2: "bbbb" }
tasks:
- name: debug list
debug:
msg: "{{ list_of_dicts|sort(attribute='key1')|first }}"
Run Code Online (Sandbox Code Playgroud)
dict
作为过滤器链的结果,我如何访问密钥?过滤器产生一个dict
看起来像这样的:
ok: [localhost] => {
"msg": {
"key1": "aaaa",
"key2": "bbbb"
}
}
Run Code Online (Sandbox Code Playgroud)
我只想key2
在过滤器链中访问- 我描绘了类似的东西,...|first.key2
但推断first
它不是一个对象(并且同样失败first['key2']
)
这肯定是重复的,但我找不到相应的答案。我希望 SO 有一个更好的搜索引擎。
您可以在 Jinja2 中对表达式进行分组,如下所示:
(list_of_dicts|sort(attribute='key1')|first).key2
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5417 次 |
最近记录: |