在url标记内访问字典(Django)

时间:2018-07-31 06:48:18

标签: django

我的Django应用程序具有以下Jinja代码:

<TextView
    android:layout_width="wrap_content"
    android:layout_height="55dp"
    android:textAlignment="center" />

<ul> {% for key, value in course_avrg.items %} <li> <a href="{% url 'course-detail' pk=course_ids[key] %}">{{ key }}:</a> {{ value }} </li> {% endfor %} </ul> 是具有键course_ids(str)和值course name(int)的字典。

course id是另一本具有键course_avrg(str)和值course name(int)的字典

在上面的代码中,我试图通过将课程名称course average传递到"key"字典中来获取每个课程的主键值(int)。

但是,出现以下错误:

  

无法解析剩余的内容:“ course_ids [key]”中的“ [key]”

那么我应该如何从Jinja URL标记中访问字典值?

1 个答案:

答案 0 :(得分:0)

您可以写custom template filter

@register.filter
def getvalue(dict, key):    
    return dict[key]

并在这样的模板中使用它:

<a href="{% url 'course-detail' pk=course_ids|getvalue:key %}">{{ key }}:</a> {{ value }}