我正在Ansible中用Jinja2模板解析一个复杂的JSON,这个JSON有很多元素和随机数组。
例如,如果date < 2001
适用于所有电机,我如何查询name
& id
的值?(这应该返回:Premium diesel
&4
).请注意,这是一个示例结构,在我的真实的场景中,它可以有随机的和更多的子节点.我需要的是一个查询来搜索整个树中的上述键.
{
"cars":[
{
"Ford":[
{
"vehicle":{
"motor":[
{
"diesel":[
{
"regular":{
"name":"Regular diesel",
"specs":{
"law":[
{
"id":1,
"date":"2008"
}
],
"gas_station":[
{
"id":2,
"date":"2002"
}
]
}
},
"premium":{
"name":"Premium diesel",
"specs":{
"law":[
{
"id":3,
"date":"2005"
}
],
"gas_station":[
{
"id":4,
"date":"2000"
}
]
}
}
}
]
}
]
}
}
]
}
]
}
1条答案
按热度按时间oxiaedzo1#
Q:***"如果日期〈2001,如何查询name & id的值?***
(this应返回:优质柴油和4)
答:创建日期小于"2001"的项目列表
然后选择项目并设置其格式
给出了预期结果
详情:
根据测试车辆的清单
获取品牌和电机列表
Give
创建一个字典的品牌'车辆'发动机
给予
使用此字典查找 * date * 小于"2001"的项目
给予
完整的测试行动手册示例
如果去掉多余的列表
创建字典 * brands_motors *
给予
创建电动机列表
给予
选择是微不足道的
给出了预期结果