Django項目佈局的舊accepted answer指定最好使glue
應用程序與來自各種其他應用程序(例如主頁)的數據綁定。Django 1.4項目佈局:使用mysite作爲膠水應用程序
現在Django 1.4自動創建../project_name/project_name/
文件夾,我應該使用project_name
作爲glue
應用程序嗎?或者我還應該製作一個core
應用程序,並自動創建project_name
應用程序?
Django項目佈局的舊accepted answer指定最好使glue
應用程序與來自各種其他應用程序(例如主頁)的數據綁定。Django 1.4項目佈局:使用mysite作爲膠水應用程序
現在Django 1.4自動創建../project_name/project_name/
文件夾,我應該使用project_name
作爲glue
應用程序嗎?或者我還應該製作一個core
應用程序,並自動創建project_name
應用程序?
在過去的幾個項目,我發現下面的佈局工作得很好:
以上common
文件夾中包含了所有並不真正適合在其他地方,包括基礎urls.py
,sitemaps.py
的東西,一般模板標籤,通用上下文處理器等等。我覺得這很乾淨,容易維護。最重要的是,整個目錄可以很容易地檢入到git中。
我不擔心1.4的默認佈局。做任何適合你的事情。
- apps/
- /foo_app
- /bar_app
- common # The equivalent of the glue app you talk about
- confs # Uwsgi/supervisor/nginx/gunicorn etc. configurations
- /production
- /staging
- /dev
- docs
- fixtures
- media
- static
- requirements # for `pip freeze > ...`
- /production
- /staging
- /development
- scripts
- settings
- private.py # Secret Key etc., not put on VCS
- database.py # DB Settings, also no in VCS
- development.py
- production.py
- staging.py
- default.py # All Django's settings
- custom.py # Custom application settings
- templates
我來自1.3,並且發現這個全新的結構也相當混亂。我猜,那麼你刪除django-admin自動生成的子文件夾,因爲我在這裏沒有看到? – lightstrike 2012-08-14 19:20:28
你在哪裏放置'manage.py'在你的這個結構中? – mbaechtold 2012-12-08 14:38:10
我不使用'manage.py',我通過virtualenv設置了路徑和設置,只是使用'django-admin.py' – 2012-12-08 15:11:15
我想你應該指定更詳細你打算放在那裏吧,因爲_frontpage_例如可能是一個應用程序,以及...項目佈局應取決於你的整個項目的複雜程度... – 2012-08-12 13:05:08