簡體   English   中英

Django 1.4 未知命令:'runserver'

[英]Django 1.4 Unknown command: 'runserver'

我的 python 路徑中的某些內容一定發生了變化,因為現在我無法運行。

python app/manage.py runserver

我得到的輸出是

Unknown command: 'runserver'
Type 'manage.py help' for usage.

我查看了我環境的 PYTHONPATH 和 PATH 變量,但我不知道為什么它沒有運行。

我找到了我的問題的答案。

  • 如果您的設置出現錯誤,manage.py 將吞下異常並報告該命令不存在。
  • 這導致我錯誤地假設我的 python 路徑或 venv 環境搞砸了。

如果要診斷此問題,請運行...

python app/manage.py help

...它會顯示異常。 當然,這是 django shell 在告訴我找不到命令后推薦的。

這顯然是 Django 1.4 中的一個錯誤。 在我看來,無論您運行什么管理命令,都應該報告異常。

查看manager.py代碼和django.core.management我可以提出一些建議。

首先,檢查文件<some_path>/django/core/management/commands/runserver.py存在。

二、運行:

>>> import sys
>>> sys.path

如果上述<some_path>不在此列表中,則您必須設置PYTHONPATH變量。

第三,(這是所有鏡頭中最長的一次)如果您更改了runserverDEFAULT_PORT ,請嘗試將其改回8000

我同意 OP。 我遇到了同樣的問題,結果是settings.py的錯誤:
在 settings.py 中,我使用os.environ[something]並且這些環境變量加載在 apache 啟動腳本中。 如果我從命令行運行manage.py ,它不知道os.environ[something]os.environ[something]因此會發生錯誤。

因此,對於在這里尋找解決方案的任何人,建議是檢查運行 django 項目和純 manage.py 之間的環境差異,也許您會發現問題所在。

我會將我的答案添加到我遇到的相同問題中。 這與 Django 版本無關,但在我項目的舊實例中,我提供了自己的 Django 副本,而不是從 pip 安裝。 后來我決定用Pip安裝Django。

當我在服務器上拉取更改時,我的 Django 文件的 repo 副本被刪除,但 .pyc 文件沒有被刪除。 manage.py仍會導入舊的 .pyc 文件,使導入中途中斷並且錯誤是相同的“未知命令:runserver”。

自然地,完全刪除帶有 .pyc 文件的文件夾解決了這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM