在開發過程中,我有DEBUG = True,並且有調試跟蹤。然後我切換到DEBUG = False來測試404/500頁面。沒有使用Django設置的調試跟蹤調試= True
現在,在我切換回DEBUG = True後,我得不到任何跟蹤,只有「內部服務器錯誤」消息。
如何獲取這些調試跟蹤?
感謝 馬丁Weberg
在開發過程中,我有DEBUG = True,並且有調試跟蹤。然後我切換到DEBUG = False來測試404/500頁面。沒有使用Django設置的調試跟蹤調試= True
現在,在我切換回DEBUG = True後,我得不到任何跟蹤,只有「內部服務器錯誤」消息。
如何獲取這些調試跟蹤?
感謝 馬丁Weberg
您如何檢查DEBUG設置爲True?嘗試
蟒蛇manage.py殼
在Python提示符輸入
導入設置
settings.DEBUG
的結果是什麼?
如果它是False,則調試可能會在local_settings.py文件(或其他地方)中重置。然後從項目目錄中執行grep -r「DEBUG = False」*。
如果settings.DEBUG的結果爲True,則apache加載錯誤的wsgi,或者wsgi加載錯誤的settings.py文件。
wsgi使用哪個settings.py文件?
我在setting.py中發現了第二個「debug = False」....謝謝你將我推向正確的方向。 –
'import settings'不是導入設置的好方法,而是使用'from django.conf import settings' – Chemary
嘗試輸入無效的路徑。如果404.html將apear這意味着地方DEBUG仍然設置爲False,或像UKU Loskit寫道,你必須重新加載服務器
編輯:
現在我再次檢查。 DEBUG = True我重新啓動了Apache。 現在,當我輸入一個無效的URL時,我收到了404.html消息。 想法? –
年底給一個機會The Python Debugger,真的很簡單,只需將其導入並寫pdb.set_trace()在要開始調試行。
您可以通過執行檢查調試設置:
python manage.py shell
import settings
print settings.DEBUG
第一次檢查DEBUG設置從
$ python manage.py shell
In [1]: from django.conf import settings
In [2]: settings.DEBUG
Out[2]: True
django.conf.settings
抽象的默認設置和具體的站點設置的概念;它提供了一個單一的界面。它還會將使用設置的代碼從您的設置位置分離出來。 Docs
如果您運行的是Apache,您需要重新加載才能看到源代碼中的更改。 –
你的服務器配置是什麼樣的? (apache,nginx等)還是隻使用內置的runserver?無論哪種方式,你需要停止你的服務器並重新啓動它。我在使用重啓命令而不是停止/啓動和代碼設置時遇到了問題。py沒有更新 –
對不起所有人......我在我的項目文件夾中搜索了「debug = False」,並在settings.py文件中第二次發現它。謝謝大家花費的時間... –