簡體   English   中英

Django應用程序的項目結構

[英]Project Structure for Django Application

我是Django的新手,並使用IntelliJ的Pycharm作為我的IDE。 輸入時:

$ django-admin startproject mysite

生成以下項目結構:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

這沒有多大意義,因為文件settings.py,urls.py和wsgi.py是項目特定的,而不是app或特定於包。 因此,它們應該像manage.py一樣進入根文件夾。 請指教。 謝謝。

這是典型的項目布局,如教程中所示

如果需要,您可以更改布局,但我建議您不要。 如果你移動了settings.py會使manage.py混淆,如果你移動了urls.py那么你必須在settings.py更新ROOT_URLCONF ,依此類推。

如果您希望使用manage.py在根項目目錄中存儲settings.pyurl.pywsgi.py文件,則可以這樣做,但是您必須對settings.py文件進行一些更改,在本地運行項目的方式。

  • 使用python manage.py runserver --settings=settings (而不是默認的python manage.py runserver -settings=mysite.settings )告訴Django使用根項目目錄中的設置文件。

  • 改變ROOT_URLCONFsettings.py'mysite.urls''urls'

  • 改變WSGI_APPLICATIONsettings.py'mysite.wsgi.application''wsgi.application'

根據偏好,改變項目結構(在合理范圍內)實際上是相對常見的。 例如,精心閱讀的Django書中的兩個Scoops of Django建議您在mysite/settings存儲不同版本的settings.py文件,如下所示(暫時忽略urls / wsgi / apps):

mysite/
    manage.py
    settings/
        base.py
        local.py
        staging.py
        production.py

暫無
暫無

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

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