抽象模型的最佳文件夹结构

时间:2014-01-30 02:19:36

标签: python django

我有一个名为文档的抽象模型。 “发票”和“报价”等文档类型继承自此类。

这是我的第一个Django项目,我对最佳文件夹结构有点不清楚。我打算让每种类型的文档都有自己的应用程序。所以,会有一个“发票”的应用程序和一个“引号”的应用程序,每个都有自己的文件夹。这是一种合理的方法吗?

我的第二个问题是文件模型应该放在哪里?文件应该是一个应用程序吗? “发票”和“报价”应该放在“文件”中吗?

1 个答案:

答案 0 :(得分:2)

嗯,这个选择有一定的主观性。它取决于所有这些不同的文档是否几乎相同(只是相对较小的变化但仍然或多或少相似),或者它们是否具有大量非常特定的功能。

我猜你的可能是第一个,他们可能会有不同的功能,但他们确实分享了很多。然后你可以继续创建它们作为单个应用程序

你会有

documents/__init__.py
documents/models.py
documents/views.py

如果,假设你有很多模型和不同类型的模型,可以说3种不同类型的文本文件,4种不同类型的音频,你可以使用这样的文件夹结构:

documents/__init__.py
documents/models/__init__.py
documents/models/base.py
documents/models/text.py
documents/models/audio.py
...
documents/views.py

因此,在这种情况下,您将在base.py中使用基本抽象模型,然后在其他文件中,您可以从基础抽象模型继承正确分类的多个模型。

然后使用这些类:

from documents.models.audio import FancyAudio
from documents.models.text import BigText, SmallText
....