我想在Django模板的字典中使用变量作为键。我一辈子都无法弄清楚该怎么做。如果我有一个带有名称或ID字段的产品,以及带有该产品ID索引的评级词典,那么我想说:
{% for product in product_list %} <h1>{{ ratings.product.id }}</h1> {% endfor %}
在python中,这可以通过简单的方式完成
ratings[product.id]
但是我无法使其在模板中工作。我尝试使用…没有骰子。有想法吗?
你需要预先准备数据,在这种情况下,你应该将两元组列表传递给模板:
{% for product, rating in product_list %} <h1>{{ product.name }}</h1><p>{{ rating }}</p> {% endfor %}
创建一个这样的模板标签(在yourproject / templatetags中):
@register.filter def keyvalue(dict, key): return dict[key]
用法:
{{dictionary|keyvalue:key_variable}}