2014-02-20 44 views
1

誰能幫助我解決這個問題。當我嘗試訪問時,出現以下錯誤。找不到網頁(404)的Django

請求方法:GET 請求URL:
使用myproject.urls定義的URL配置,Django的嘗試這些URL模式,順序如下: ^管理員/ ^的myproject/$ [名稱= '家'] 當前的URL,沒有找到相關的這些。 因爲你有DEBUG =真在你的Django settings文件你會看到這個錯誤。將其改爲False,Django將顯示一個標準的404頁面。

urls.py

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

from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('', 
# Examples: 
#url(r'^$', 'myproject.views.home', name='home'), 
# url(r'^blog/', include('blog.urls')), 

url(r'^admin/', include(admin.site.urls)), 
url(r'^booking/$', 'booking.views.home', name ='home'), 
) 

views.py

from django.shortcuts import render 
#.. 

# Create your views here. 
def index(request): 
    return render("Hello, guesthouse!!") 

settings.py

INSTALLED_APPS = (
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'booking', 
) 
ROOT_URLCONF = 'myproject.urls' 

WSGI_APPLICATION = 'myproject.wsgi.application' 

admin.py

from django.contrib import admin 
from booking.models import Bookings 


# Register your models here. 
admin.site.register(Bookings) 

謝謝 Rads

回答

1

您在booking.views中似乎沒有home函數。

展開後回答:每個URL規範有幾個部分是告訴Django如何路由請求。在您的文章您有:

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

爲了映射到工作,你需要具備的功能:

booking.views.home

你有三個選擇這裏,首先是要實現另一個第二個是你可以將booking.views.index重命名爲booking.views.home,第三個是你可以將url規範更改爲以下內容:

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

所有這三個選項假設你有一個像目錄結構:

|-<project_root_dir> 
| | 
| |- <project> 
| |- booking 
| |  |- <other files> 
| |  |- views.py 
+0

約翰嗨指定的視圖相匹配的「家」,謝謝你的建議。你指的是什麼樣的家庭功能? – Rads

+0

看看修訂後的答案 –

+0

嗨,John,非常感謝您的建議。我遵循你的指示。仍然卡住相同的錯誤:(不知道如何解決它。有什麼建議嗎?謝謝你的時間。關心,Rads – Rads

0

你的錯誤是在urls.py.你最後的模式不正確。我覺得應該是

url(r'^booking/$', 'booking.views.index'), 
+0

您好,感謝您的建議它沒有工作與'booking.views早些時候。 index'',所以我用'booking.views.home'發佈了這個網址 – Rads

+0

我早些時候用這個網址試了一下沒有工作url(r'^ booking/$','booking.views.index') – Rads

+0

I'我不知道我理解你的命令,如果我錯了,糾正我 - 你有一個模塊views.py位於'預約'應用程序直接ORY。在該模塊內是一個函數'index()'。如果是這種情況,那麼你需要映射你的url()模式來專門調用該函數。如果這不起作用,那麼看看你的目錄/模塊佈局。別的東西是不對的。 – user590028

3

你得到404,因爲「家」不views.py或錯誤存在,你命名的觀點是錯誤的。

下面我的名字來看改爲在你的urls.py

views.py

from django.shortcuts import render 

def home(request): 
    """ 
     home view 
    """ 
    return render("Hello, guesthouse!!")