我将字典-内容-发送到看起来像这样的模板。内部内容是多个词典。其中一个名为like_dict,其外观如下:{1:18} {2:14} {3:15},另一个名为info,它保存我的用户ID。我使用以下代码对其进行排序:
{% for x in info %}
{% if x.id in like_dict %}
<p> the value is: {{ like_dict.x.id }} </p>
{% endif %}
{% endfor %}
除段落标记中的部分外,其他所有内容似乎都可以正常工作。当我用我的ID号替换x.id时(例如:like_dict.1),它会输出'18'。当我将其保留为示例中的示例(like_dict.x.id)时,它会在like_dict中找到x.id,但仅显示“ value is:”,而未说明字典值。当我尝试执行此操作时-like_dict [1]-使用方括号时出现错误。有人可以指导我如何在密钥与我的ID匹配时只打印值吗?
答案 0 :(得分:0)
您应该使用方括号来访问字典的可变键值:
<p> the value is: {{ like_dict[x.id] }} </p>
答案 1 :(得分:0)
在您遇到的情况下,我会尝试使用“ with”关键字将x.id存储在模板中的变量中。
{% for x in info %}
{% for k, v in x.items %}
{% if k == 'id' %}
{% if v in like_dict %}
{% for key, value in like_dict.items %}
{% if key == v %}
<p>The value is: {{ value }}</p>
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
警告:这是一个非常肮脏的解决方案。