我正在尝试在Django中创建一个模板。在那个模板中我有:
dato
包含类似此{"Name":"Someone","Age":"23"}
和propiedad
的字典,其中包含类似{"parameterName":"Name"}
的字典。我可以{{propiedad.parameterName}}
并获取值Name
。之后,我想将该值存储在buffer
(直到现在才存在),以便稍后{{dato.buffer}}
获取Someone
,我将在HTML中显示。我不知道怎么做,有人能帮助我吗?
代码片段:
<tbody>
{% for dato in atributo.datos %}
<tr>
{% for propiedad in atributo.propiedades %}
<td>
{# I would make the stuff here#}
{{ dato.buffer}}
</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
答案 0 :(得分:1)
如果我的问题正确无误,您需要编写自己的自定义django template filter:
from django.template.defaulttags import register
...
@register.filter
def getparam(dictionary, key):
return dictionary.get(key)
并使用它在你的html中获取它:
{{ dato|getparam:propiedad }}
答案 1 :(得分:0)
这可以使用django过滤器来实现。但我们必须编写自己的自定义过滤器。
将其包含在视图文件中
from django.template.defaulttags import register
@register.filter
def get_item(dictionary, key):
return dictionary.get(key)
在html文件中,您可以添加以下行。我们正在将dictionary
和key
传递给get_item
过滤器,该过滤器会返回密钥的value
。
<td>{{ dato|get_item:propiedad }}</td>