2017-02-24 54 views
0

我運行下面的教程Django Tutorial for Beginners - 2 - Creating a ProjectDjango的主頁犯規顯示

,當我從urls.py

from django.conf.urls import include, url 
from django.contrib import admin 


urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^', include('music.urls')), 
] 

波紋管運行代碼這顯示即使是在我的http://localhost:8000/
音樂頁。當我刪除行

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

我music.py文件

from django.conf.urls import url 
from music import views 


urlpatterns = [ 
    url(r'^', views.index, name="index"), 
] 

然後轉到主頁預期

它爲什麼會發生?難道它不應該放在第一行嗎? 我運行Django的版本1.10.5

感謝

+0

你有一個'music'應用程序? –

+0

是的,如果我添加/音樂,它會轉到那個網址 –

+0

你能包含你的'music/urls.py'文件嗎? –

回答

0

當你在localhost:8000/它進入音樂頁面,因爲該網址在網址中定義的模式相匹配。在你的根urls.py中,你可以通過做url(r'^music/', include('music.urls')),來使URL顯示音樂。這樣,您將通過點擊端點localhost:8000/music/進入音樂頁面。

要轉到主頁,添加符合您的主頁網址在你的根urls.py例如URLPATTERN:

url(r'^/$', views.home, name='home'), 
+0

Itried這一點,我得到 - > 找不到網頁(404) 請求方法:\t GET 請求URL:\t的http://本地主機:8000/ 使用URL配置Django按照以下順序嘗試使用這些URL模式: ^ admin/ ^ music/ 當前URL與這些URL中的任何一個都不匹配。 而不應該它去匹配的第一個網址? –

+0

檢查更新回答 –

+0

我沒有views.home。我正在閱讀教程。 爲什麼當我只使用第一個url「url(r'^ admin /',admin.site.urls)」時,它會發現主頁和外表沒問題,但是當我添加另一個url時,它並沒有發現它? –