Django应用程序的项目结构

时间:2016-01-08 15:17:40

标签: python django intellij-idea

我是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一样进入根文件夹。请指教。感谢。

2 个答案:

答案 0 :(得分:0)

这是典型的项目布局,您可以在the tutorial中看到。

如果需要,您可以更改布局,但我建议您不要。如果您移动settings.py会导致manage.py混淆,如果您移动了urls.py,那么您必须更新ROOT_URLCONF中的settings.py,依此类推。

答案 1 :(得分:0)

如果您希望将constructor() { this.info = "test"; this.get = this.get.bind(this); } settings.pyurl.py文件存储在根项目目录中wsgi.py,您可以这样做,但是您必须制作一个对manage.py文件进行一些更改以及在本地运行项目的方式。

  • 使用settings.py(而不是默认的python manage.py runserver --settings=settings)告诉Django使用根项目目录中的设置文件。

  • python manage.py runserver -settings=mysite.settings中的ROOT_URLCONFsettings.py更改为'mysite.urls'

  • 'urls'中的WSGI_APPLICATIONsettings.py更改为'mysite.wsgi.application'

根据偏好,改变项目结构(在合理范围内)实际上是相对常见的。例如,精心阅读的Django书中的两个Scoops of Django建议您将'wsgi.application'文件的不同版本存储在settings.py中,如下所示(暂时忽略urls / wsgi / apps):

mysite/settings