python - Django - 获取错误 "Reverse for ' 详细信息',没有找到任何参数。尝试了 1 种模式 :"when using {% url "音乐 :fav"%}

标签 python django django-templates

我最近 4 天在学习 Django 框架。 今天我试图通过使用

在 HTML 模板中检索 URL

{% url "music:fav" %}

我在 music/urls.py 中将命名空间设置为

app_name= "music"

我还有一个名为 fav() 的函数。 这是代码:

音乐/urls.py

from django.urls import path
from . import views
app_name = 'music'

urlpatterns = [
path("", views.index, name="index"),
path("<album_id>/", views.detail, name="detail"),
path("<album_id>/fav/", views.fav, name="fav"),
]

音乐/views.py

def fav(request):
    song = Song.objects.get(id=1)
    song.is_favorite = True
    return render(request, "detail.html")

详细.html我用过

{% url 'music:fav' %}

但我不知道为什么会显示此错误:

NoReverseMatch at /music/1/ Reverse for 'detail' with no arguments not found. 1 pattern(s) tried: ['music\/(?P[^/]+)\/$']

最佳答案

path("<album_id>/fav/", views.fav, name="fav"),

此 URL 需要 album_id。像这样:

{% url 'music:fav' 1 %}
{% url 'music:fav' album.id %}

关于python - Django - 获取错误 "Reverse for ' 详细信息',没有找到任何参数。尝试了 1 种模式 :"when using {% url "音乐 :fav"%},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47944443/

相关文章:

python - 根据唯一对值过滤 pandas 数据框

python - 子进程未从使用 Nose 运行的 Django 测试中捕获所有标准输出

python - 返回动态生成的文件而不创建 tmp 版本?

python - Django 中字母数字(slug)字符串的 URL 模式

python - 超链接中的 Django 模板标签

python - 如何将创建表条目的日期字段的默认值设置为空,并在归还书籍时更新它?

python - 如何使用 python 编辑相机帧?

python - 名称错误 : name 'Profile' is not defined

django 模板继承 - 用于多个子模板的 views.py

python - 在 for 循环期间删除列 - Pandas