2013-10-06 98 views
1

我安裝了Django,它的工作原理。我設置它,所以它使用我的MySQL數據庫,我開始了一個項目。到現在爲止還挺好。Django給我一個404錯誤

我也跟着上設置你的第一個Django應用程序在本教程在

https://docs.djangoproject.com/en/dev/intro/tutorial01/

這是在建立在那裏的一切實際上已經爲你打造一個現有的投票前的應用程序的教程。數據庫結構甚至已經被處理。

我跑:

python manage.py startapp polls

python manage.py sql polls

python manage.py syncdb

我沒有收到任何成功的消息,所以我走進我的phpmyadmin和萬歲!我的數據庫中有新的表格和行。

他們的教程,然後告訴我跑:

python manage.py shell 

和我會看到一些數據庫的東西,但我沒有。爲什麼會這樣呢?我忽略了它,繼續前進了第二步。我仍然沒有將我的settings.py中的DEBUG設置爲False,所以我做到了。只有得到500錯誤。

後一些挖我讀我需要添加:

ALLOWED_HOSTS = ['my ip address']; 

我這樣做,現在運行後:

python manage.py runserver myip:8000 

當我嘗試訪問的Django在我的瀏覽器,我收到了

未找到

請求的URL/在這個服務器上沒找到。

明顯/改變到一個不同的位置時,導航到這些地方,但重點是我得到一個404無論如何。

因此,我看看我的終端,並在終端上顯示一條黃色消息。

「GET/HTTP/1.1」 404 74

並且存在這樣的1個消息我試圖訪問的每個地方。

我想有一個Python包,我沒有安裝在我的服務器上?

我不想使用ALLOWED_HOSTS ['*']我看到這是不好的做法。我做了它,它產生的結果與使用我的IP地址代替*(我只是想添加額外的信息,以防它有用)

+0

您的看法是否會引發404錯誤?是否沒有錯誤信息? – bozdoz

+0

我在瀏覽器中查看說, 「未找到(換行)在此服務器上未找到請求的URL /」。這是大多數404s的樣子。 在我的終端,它實際上說404(請參閱上文) – gregor

+0

它可能是我有一個錯誤的WSGI腳本路徑。日誌在哪裏檢查這是什麼? – gregor

回答

0

如果你想使用數據庫shell,你應該在您的文章運行dbshell命令,而不是作爲shell,像這樣:

python manage.py dbshell 

如果運行shell,你會得到一個Python外殼,在那裏你可以輕鬆地導入和檢查項目的Python對象。

在您的本地電腦上,最好在您的settings.py中有DEBUG = True。這樣你不需要打擾ALLOWED_HOSTS,因爲在調試模式下所有的主機都被允許。其次,當您在調試模式下遇到404錯誤時,該頁面將顯示您可以嘗試的有效URL。

Django教程當然有效。 如果您錯過了某個步驟或錯誤地輸入了某些內容,則唯一方法是無效。如果你重新開始並多加關注,我認爲它會起作用。

+0

安裝了兩次。每次都有同樣的問題。我完全遵循了一切。你是否積極,該教程不只是假設每個人都知道一些東西而放棄它?我們可以整天說這樣的話。事情是我已經看到這個問題遍佈網絡,但我似乎無法找到答案。因此,不要給出一個通用的廣泛答案,可能有助於排查問題。不管怎麼說,還是要謝謝你。我知道這個教程沒有提到添加allowed_hosts或者包含你的項目conf。這是兩個相當大的信息。所以難道還有其他可能被遺漏的機會嗎? – gregor

+0

無論我將Debug設置爲true,我所得到的全部是**當然,您還沒有真正做過任何工作。接下來該做什麼: 如果您打算使用數據庫,請在firstweb/settings.py中編輯DATABASES設置。 通過運行python manage.py startapp [appname]來啓動您的第一個應用程序。 您看到此消息是因爲您在Django設置文件中有DEBUG = True,並且您尚未配置任何URL。開始工作!** – gregor

+0

我已經全部閱讀開始我的項目,並添加了我的數據庫工作。我在OP中提到了所有這些。我想我應該在某處設置一個網址,然後我會研究這個網址。 – gregor