Django上找不到页面(404)错误

时间:2017-01-28 14:36:19

标签: python django

这是我的music \ urls.py代码: -

     #/music/
url(r'^/$', views.index, name='index'),

#/music/712/
url(r'^(?P<album_id>[0-9]+)/$', views.detail, name='detail'),

这是我的views.py代码: -

def index(request):
return HttpResponse("This will be a list of all the albums")

def detail(request, album_id):
return HttpResponse("Details for album id: " + str(album_id))

为什么每当我尝试在浏览器中打开此链接127.0.0.1:8000/music/2/时,都会收到Page not found(404)错误

错误消息: -

找不到页面(404) 请求方法:GET 请求网址:http://127.0.0.1:8000/music/2/ 使用website.urls中定义的URLconf,Django按以下顺序尝试了这些URL模式: ^管理员/ ^ music ^ / $ [name ='index'] ^音乐^(?P [0-9] +)/ $ [name ='detail'] 当前网址music / 2 /与其中任何一个都不匹配。

Error message

请帮助!

1 个答案:

答案 0 :(得分:1)

您的网址格式缺少music<album_id>之间的斜线 - 目前,它们会匹配/music2/而不是/music/2/

将缺少的斜杠添加到包含音乐网址的网址模式中:

url('^music/', include('music.urls')),

然后从索引模式中删除斜杠以避免双斜杠。

url(r'^$', views.index, name='index'),