【问题标题】:better architecture in django is different apps. or single App for different components?django 中更好的架构是不同的应用程序。还是针对不同组件的单个应用程序?
【发布时间】:2012-04-19 23:16:54
【问题描述】:

我打算有一个应用程序。我想让不同的事物相互关联,并想知道我应该将它们作为不同的模型还是不同的应用程序。显然,如果这是 LMS 中的学生、教师,那么它们是 LMS 的必要组成部分,而如果这是工作、专业和公司,那么与工作相关的内容可能不同,专业人士可以拥有具有不同特征的完整个人资料,公司可以拥有不同的目录列表等喜欢的功能。

因此,作为用户的公司和专业人士也应该有所作为。应用。并作为不同的应用程序工作。?这种方式会好吗?作为乔布斯应用程序。并非总是到处都需要有专业数据或雇主所有数据,而不仅仅是姓名。因此,将它们作为差异似乎更方便。应用程序,以便它可以在其他地方使用。那么这样对吗?

或者

由于我也希望这个项目具有灵活性,所以上述内容会使其更复杂吗?我是否应该将它们视为差异。模型而不是差异。应用。由于 Company 和 Professional 是 users ,django 也为此提供了 Profile 功能。那么这是正确的方法吗?

哪种方式更好?

提前致谢。

【问题讨论】:

    标签: django django-models django-apps django-users django-project-architect


    【解决方案1】:

    这里没有确切的答案,所以这是我的看法。

    拥有多个应用程序而不是一个大应用程序总是好的。原因:

    • 应用程序变得更小,更容易维护小段代码;
    • 项目结构变得更加清晰,我只需要查看文件管理器就可以看到项目的主要部分;
    • 应用之间的交互变得明确:易于测试并防止不必要的耦合。

    并非每个 Django 应用程序都应该是可插拔的。有两个相互依赖的应用程序是可以的(如果您不打算单独分发它们)。这就像有两个依赖函数:没有什么问题。

    【讨论】:

    • +1 on “不是每个 Django 应用程序都应该是可插拔的”,我经常不得不停止自己尝试创建每个应用程序时都考虑到可插拔性。
    • 我认为是的,一个不可插入的应用程序。可以稍后转换为可插入的稍后。
    猜你喜欢
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    • 2021-04-13
    • 2019-04-10
    • 1970-01-01
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    相关资源
    最近更新 更多