簡體   English   中英

我的Django應用程序必須與項目目錄名稱相同嗎?

[英]Does my Django app have to be the same name as the project directory?

我已經將我的Django存儲庫從bitbucket拉到了數字海洋服務器上。 我在服務器中的項目文件夾名稱是project而我在倉庫中的初始應用程序(帶有settings.pyapp稱為app 。這會導致任何問題嗎?因為我知道在離線創建django項目時,第一個目錄始終是與父目錄相同。

父目錄和項目目錄的名稱(與settings.py相同)不會有任何問題。 您可以嘗試重命名父目錄,它仍然可以以相同的方式工作,但是不應觸摸項目目錄的名稱,因為該名稱與用於運行項目的項目設置鏈接在一起。

而我的倉庫中的第一個應用程序(帶有settings.py的應用程序

那不是應用程序,那是您項目的配置。

不,項目的根目錄和配置目錄具有相同的名稱不會造成任何問題。

這甚至是設計成完全正常的方式。

由於wsgi.py(應該是您用於生產的內容)可以動態處理路徑,因此只要保留了項目的內部結構即可(不要重命名項目的配置目錄)。

項目的絕對路徑不是硬編碼的,它是通過獲取配置目錄的父目錄來檢索的。 您可以移動項目,甚至重命名其根目錄。

處理方法如下:

wsgi.py

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "testproject.settings")

wsgi.py設置正確的值以使用正確的settings.py文件。

settings.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

settings.py動態設置BASE_DIR 然后,此值將用於處理路徑,以避免硬編碼的絕對路徑在您移動項目后立即無法使用。

暫無
暫無

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

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