【问题标题】:Django naming convention for views/models as package视图/模型作为包的 Django 命名约定
【发布时间】:2019-03-29 08:53:52
【问题描述】:

我将views.py 和models.py 拆分为子模块views/ 和models/

模块views.py 是复数形式。当它被拆分为子模块视图/文件必须是复数还是单数?

例如,在模型/中:

models/
    employee.py
    department.py
    schedule.py

views/
    employee.py
    department.py
    schedule.py

根据django,文件应该是复数,但是在这种情况下,我应该给每个文件名取复数还是单数?

更新:我们的项目中有很多应用程序。这是一个应用程序,它具有许多相互依赖的模型,因此属于单个应用程序是有意义的。我们喜欢干净漂亮的东西,所以我们将它们分成子模块,如视图/和模型/。

【问题讨论】:

  • 如果单个文件包含单个类,那么将其命名为单数是有意义的

标签: python django


【解决方案1】:

这不是你想要的解决方案。

但是在这里将项目拆分为小型 django 应用程序会更有意义。

我个人遵循这种结构,并且看到许多项目都遵循相同的结构

employee/
    models.py
    views.py

schedule/
    models.py
    views.py

department/
    models.py
    views.py

但是您的项目结构不允许您这样做,那么您添加的内容也是可读且有意义的。

【讨论】:

    【解决方案2】:

    我认为以单数命名模型文件是合理的,但是对于视图文件,值得考虑,因为视图通常可以在其内部使用多个模型,在这种情况下,这样的文件名可能会产生误导。我通常根据它们所做的业务逻辑调用视图文件。

    将项目拆分为 django 应用程序也是一个好主意。

    【讨论】:

      【解决方案3】:

      我不认为有任何约定或准则或用于命名视图模块。这更多的是个人选择。只需选择单数或复数,并在所有地方使用stick with it。

      要选择一个选项,您可以查看如何命名堆栈(模型)中最深的层。如果您已将 Employee 用于您的员工模型(这更有可能),请将 employee 用于模块。如果您使用过Employees,请使用employees。如果我是你,即使一个文件中有多个类(每个 CRUD 操作一个),我也会为模块使用单数名称。

      【讨论】:

      • 谢谢我也选择了这个方法。让我们再等几天,看看是否有其他 cmet 和反馈,很想听听更多的想法。否则,这将被选为答案。 tqvm
      猜你喜欢
      • 2010-09-28
      • 1970-01-01
      • 2010-09-10
      • 2012-02-11
      • 2016-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多