Django项目目录可以更简单的结构有没有南?

时间:2012-05-14 03:21:39

标签: django model-view-controller migration django-south

我是Django的新来者。

但是,我对Django的目录结构感到困惑。例如,我必须在不同的地方写出这么多的models.py,这可能会导致将来难以维护项目。我想让它更像真正的MVC结构,模型目录中的每个模型文件。

是否可以使用South,这似乎只关注models.py,或者我应该考虑不同的迁移工具?

2 个答案:

答案 0 :(得分:2)

Django将代码组织到'apps'中,这就是为什么你有单独的models.py文件,我认为没有办法将它们全部放在一个目录中,因为每个应用程序都有自己的Python包。 / p>

然而,我通常构建代码的方式是为我的所有代码提供一个(或几个,如果它是一个更大的项目)应用程序,因为你可以在一个models.py文件中拥有尽可能多的模型想。

我不认为南方会帮助你,但它会让你更容易管理你的迁移,所以我强烈推荐它。

答案 1 :(得分:2)

我认为django中没有规定将所有模型放在一个地方。把所有东西放在一个地方也是不错的主意。因为每个应用程序都有自己的数据库架构,并且放置应用程序独立是实现可重用性因素所必需的。最好保持模型彼此隔离,附加到他们的应用程序,因为它有助于可重用性。

南方没有实现这一目标。它只是跟踪你的Db迁移n灯具。

在某种程度上,无论DB Schema的设计有多么完美,South都会进入画面。