我正在尝试使用以下划线字符开头的键访问 dict 的元素。例如:
my_dict = {"_source": 'xyz'}
我正在尝试在 Django 模板中访问它们。显然,我意识到您无法从 Django 模板访问带下划线的 Python 变量(因为它们在 Python 中被认为是私有的),但这是一个 dict 对象,其中任何不可变对象都是有效键。
我无法使用 {{ my_dict._source }} 在 Django 模板中访问上述字典,所以我认为 Django 正在阻止它。那准确吗?
我有点希望 Django 对以下划线开头的变量做一些理智的事情,比如仍在进行 dict 查找(第一件事应该是尝试),但拒绝进行属性查找、方法调用和列表索引查找,因为带下划线的前缀变量将是无效的。不过,我很快就失去了希望。
作为记录,我知道有人会建议只更改字典,但这实际上是在 ElasticSearch 实例上执行 REST API 请求时由 rawes 库返回的多级字典。