【问题标题】:Is there a naming convention for Django project/configuration directory?Django 项目/配置目录有命名约定吗?
【发布时间】:2018-04-29 19:13:43
【问题描述】:

我指的是包含 settings.pywsgi.py 的目录(Two Scoops of Django 将其称为“配置根”,因为它很有价值)

我见过有人用实际项目名称 (the official Django tutorial does this) 命名此目录,但这会导致如下所示的冗余/混乱目录结构:

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

似乎有以下内容会更清楚:

mysite/
    manage.py
    conf/
        __init__.py
        settings.py
        urls.py
        wsgi.py
    app1/
    app2/

我看到已经有一个关于 Django app naming conventions 的问题,但找不到关于 project/conf 目录的任何内容。

为了清楚起见,我问的是命名目录的内容,而不是格式约定(下划线、小写与大写等)。

【问题讨论】:

    标签: django


    【解决方案1】:

    关于这个话题here有一些很好的讨论。一些通用选项是项目、配置、核心、基础。我偏爱“项目”(/mysite/project/settings.py 等)。要像这样设置一个新项目,请 cd 进入您的空基本目录并运行 django-admin startproject project .

    我从来都不喜欢默认约定。这似乎是多余的,并且经常与我想要命名的“主应用程序”相冲突。例如,我想创建一个时间跟踪站点,所以我将我的项目称为“计时器”(/timers/timers/settings.py 等)。但是现在我无法启动一个名为 timers 的应用程序,这是我保留计时器模型等应用程序的最佳名称。如果我将我的项目命名为“project”,那么我仍然可以拥有一个名为“timers”的应用程序。

    timers/
      manage.py
      project/
        settings.py
      timers/
        models.py
    

    【讨论】:

      【解决方案2】:

      通常,您应该使用用于任何包或模块的模式。 1.小写字母 2. 如果需要,下划线 (_)。 如果您不想使用多余的名称,您只需在 roject 创建命令后的空格后添加点(。)。
      django-admin.py startproject myproject .

      【讨论】:

      • 询问名称本身与格式,编辑问题以使这一点更清楚
      猜你喜欢
      • 2016-01-02
      • 1970-01-01
      • 1970-01-01
      • 2011-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多