2017-08-27 46 views
1

我花了很多時間試圖解決此問題,但不知道問題出在哪裏,因爲沒有彈出錯誤。它根本不起作用。Django模板不會加載,即使url更改

mysite/ 
manage.py 
mysite/ 
    __init__.py 
    settings.py 
    urls.py 
    wsgi.py 
Home/ 
    templates/ 
     Home/ 
      Home.html 
Application/ 
    templates/ 
     Application/ 
      Apply.html 

在我的Home.html我有一個鏈接:

<a href="{% url 'Application:Apply' %}">Apply Now!</a> 

當我點擊它,網址更改/申請,但我仍然在同一頁上。 (它也似乎像Home.html重新加載,因爲我需要向下滾動頁面點擊該鏈接,一旦我點擊它,它會讓我回到頁面的頂部)。

的mysite/urls.py

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

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

if settings.DEBUG: 
    urlpatterns += static(settings.STATIC_URL,   
document_root=settings.STATIC_ROOT) 

首頁/ urls.py

from django.conf.urls import url, include 
from . import views 


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

應用/ urls.py

from django.conf.urls import url, include 
from . import views 

app_name = "Application" 
    urlpatterns = [ 
    url(r'Apply', views.Apply, name = 'Apply'), 
] 

應用/ views.py

from django.shortcuts import render 

def Apply(request): 
    return render(request, 'Application/Apply.html') 

我會很感激任何建議,因爲我不能繼續我的項目,直到我知道了。

+0

顯示在首頁的urls.py。 –

+0

我剛剛添加了它們。 – Sukhrab

回答

5

你錯過了結束的字符串的字符'$'Home網址,所以圖案攔截所有其他網址,因爲它們都匹配起始字符'^'。添加結束串的字符:

urlpatterns = [ 
    url(r'^$', views.Home, name = 'Home'), 
] 

演示:

>>> import re 
>>> re.match('^', 'Apply') 
<_sre.SRE_Match object at 0x1034c9b90> 
>>> re.match('^$', 'Apply') 
>>> 
+0

它的工作。非常感謝! – Sukhrab