我的Django应用程序正在与API交互并在模板中显示结果。
API结果有一些普通的键值对和一些自定义字段,其中双键和单引号都有一个键。
密钥格式为" ' custom_field_123' "在结果JSON:
{'cost_price': '0.00', "'asset_field_1234'": None, "'asset_field_5768'": None}
我知道这不是正确的JSON格式,但它是我必须处理的。
在我可以使用的Django模板中:
<p>{{tower.name}}</p>
用于常规格式键。 但模板语言无法识别:
<p>{{tower.'custom_field_123'}}</p>
或者
<p>{{tower.('custom_field_123')}}</p>
是否有办法访问这些值,或者我必须重命名引号中的键才能在模板中访问它们。
答案 0 :(得分:1)
来自the template reference docs:
变量名必须包含任何字母(A-Z),任何数字(0-9),下划线(但不能以下划线开头)或点。
因此不允许引用,模板语言无法直接访问这些属性。
您可以编写自己的模板标签,通过变量键查找字典项目(如this question中所述),但我建议您修复数据。