我正在构建一个字典,其中包含字符串(A1,A2,A3 .... C10)作为键,数据库对象作为值。
itemsByPosition = {}
for storage_instance in StorageInstance.objects.all():
itemsByPosition[storage_instance.cell] = storage_instance
在模板中,
我想显示对象的不同字段。 一个孤立的,硬编码的例子是(实际上我使用循环来打印整个字典):
{{ itemsByPosition|hash:'A2' }}
in templatetags.py
def hash(h,key):
if key in h:
return h[key]
else:
return None
register.filter(hash)
但是,模板标记'hash'返回模型的字符串表示形式(例如:“Stabi00052”)而不是整个对象。我希望能够在模板中访问此对象的各种属性。
答案 0 :(得分:0)
如果密钥是没有空格或字符串而不是下划线的字符串(documentation)
,则可以直接访问字典值而无需自定义过滤器{{ itemsByPosition.A2.attribute }}