首页 > 解决方案 > 在源代码中换行时 {% url ... %} 中的 URL 错误

问题描述

我正在使用 Django (2.2) 开发一个应用程序,我的一个 html 模板遇到了问题,当源代码行在 {% url ... %} 内中断时,URL 不起作用标签。

这是不起作用的代码:

                <small><a href="{% url 'learning_logs:edit_entry' 
                    entry.id %}">edit entry</a></small>

这是我得到的错误:

Page not found (404)
Request Method: GET
Request URL:    http://localhost:8000/topics/2/%7B%25%20url%20'learning_logs:edit_entry'%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20entry.id%20%25%7D
Using the URLconf defined in learning_log.urls, Django tried these URL patterns, in this order:

admin/
users/
[name='index']
topics/ [name='topics']
topics/<int:topic_id>/ [name='topic']
new_topic/ [name='new_topic']
new_entry/<int:topic_id>/ [name='new_entry']
edit_entry/<int:entry_id>/ [name='edit_entry']

The current path, topics/2/{% url 'learning_logs:edit_entry' entry.id %}, didn't match any of these.

这是有效的代码:

                <small><a href="{% url 'learning_logs:edit_entry' entry.id %}">
                    edit entry</a></small>

这是否意味着您不能在 {% url ... %} 标签内的源代码中换行?有什么解决方法吗?

标签: htmldjango

解决方案


尝试这个

<small>
<a href="{% url 'learning_logs:edit_entry' edit_entry=entry.id %}">
 edit entry
</a>
</small>

推荐阅读