我已經經歷了許多教程,構建了幾個應用程序,甚至還有一位Django的創建者閱讀了這本書。但是我被「適當的」目錄結構迷住了。Django的默認/邏輯目錄結構
一個似乎總是得到一棵樹,看起來像這樣(在虛擬環境下在頂部):
我感到困惑的是,
os.path.abspath(__file__)
點「mysitedir」 (參考文獻說它總是指向其中settings.py的目錄)。
想必這個想法是,整個'網站'下面有一個或多個'應用程序',儘管我從來沒有見過這樣做。
首先,這是否正確?第二,是否有一些令人信服的理由(或者我做錯了什麼)使'應用程序'不能插入'mysitedir'下面?這似乎更有意義並保持模塊化。
Django像遍歷整個樹尋找靜態文件的方式似乎很奇怪。在settings.py中列出'apps'也是不合邏輯的,並且 - 再一次說明 - Django需要遍歷並返回來查找這些文件(而不是隻能查看由os.path指定的目錄.abspath(文件)。
在哪裏放置venv在某些方面取決於你的devops和你打算建立的地方。如果你通過elasticbeanstalk在AWS中構建,我通常會把它放在本地父項中,所以我不需要.gitignore它。如果你使用docker進行部署,你可能會採用不同的地方。不要過分使用應用程序和模型。這在歷史上使遷移更加簡單。 https://medium.com/cs-math/11-things-i-wish-i-knew-about-django-development-before-i-started-my-company-f29f6080c131 – sahutchi
從1.3開始使用Django,他們保留改變目錄結構(或他們做了)。希望他們已經決定這一個不會改變。 –