天天看點

Django從理論到實戰(part6)--關于DEBUG

學習筆記,僅供參考

參考自:Django打造大型企業官網

本系列Blog以應用為主,理論基礎部分我在後端專欄的Django系列部落格已經寫過了,如果有些需要補充的知識點,我會在這個系列中,盡量詳細的寫一下。

關于DEBUG

DEBUG=True

在我們項目的settings.py檔案中,有一個DEBUG變量,當我們把它設定為True時,會進入DEBUG模式。那麼我們把DEBUG設定為True将有什麼好處呢?

備注:DEBUG的意思為排錯, 調試, 除錯.

  • 好處1

如果開啟了DEBUG模式,那麼以後我們修改了Django項目的代碼,再進行儲存(ctrl+s),那麼Django就會自動幫我們重新開機項目,而不需要我們手動重新開機項目。

關于這一點,在我們每次修改完代碼,并儲存時,在控制台界面中應該可以清晰的觀察到。

  • 好處2

如果開啟了DEBUG模式,那麼當Django項目中的代碼出現了bug時,浏覽器和控制台中将會列印出錯誤資訊,這将友善我們調試。

注意事項

當我們的項目上線時,我們應該關閉DEBUG模式,因為如果某人通路我們的網站時,出現錯誤了,那麼他的浏覽器将顯示報錯資訊,對方可以通過這些報錯資訊得到我們伺服器端的資訊,這将産生很大的安全隐患。

如何關閉DEBUG模式

隻要将settings.py檔案中的DEBUG變量設定為False:

DEBUG = False      

當我們修改并儲存後,控制台彈出了報錯資訊:

CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False.      

Django提示我們如果我們設定DEBUG為 False,那麼一定要設定ALLOWED_HOSTS變量,這個ALLOWED_HOSTS可以設定哪些人可以通路我們的項目。

我們設定一下ALLOWED_HOSTS,允許任何人通路:

ALLOWED_HOSTS = ['*']      

好的,我們現在,向http://127.0.0.1:8000/book/show_book/發起請求:

Django從理論到實戰(part6)--關于DEBUG

通路成功!

我們再向一個項目沒有定義的url發起請求: