django - 在 url 标签中访问字典(Django)
问题描述
我的 Django 应用程序有以下 Jinja 代码:
<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
是一个带有键course name
(str)和值course id
(int)的字典。
这是另一个具有键(str)和值(int)的course_avrg
字典course name
course average
"key"
在上面的代码中,我试图通过将课程名称传递给course_ids
字典来获取每门课程的主键值(int) 。
但是,我收到以下错误:
无法解析剩余部分:来自“course_ids[key]”的“[key]”
那么我应该如何从 Jinja URL 标签中访问字典值呢?
解决方案
您可以编写自定义模板过滤器:
@register.filter
def getvalue(dict, key):
return dict[key]
并在这样的模板中使用它:
<a href="{% url 'course-detail' pk=course_ids|getvalue:key %}">{{ key }}:</a> {{ value }}
推荐阅读
- shopware - 在运行时从外部 URL 加载 Shopware 6 店面中的任何地方的产品图像,而不将其保存在文件系统中
- wget - 如何修复 Wget 参数名称“C”不明确?
- ios - Swift 委托和协议
- node.js - 如何使用 sapper 将其他文件导入 server.js?
- javascript - Razorpay nodejs express 集成问题
- swift - 如何创建一个“对齐”的字节数组并从中读取?
- informatica - 我想在 Informatica 的表达式转换器中使用条件表达式
- laravel - laravel 本地化使用 mcamara 包
- vue.js - 如何在 vuejs 的母版页中打开新链接
- java - Swagger 是否与 Struts 一起使用来记录 REST api?