[英]Does my Django app have to be the same name as the project directory?
我已經將我的Django存儲庫從bitbucket拉到了數字海洋服務器上。 我在服務器中的項目文件夾名稱是project
而我在倉庫中的初始應用程序(帶有settings.py
的app
稱為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.