【发布时间】:2014-11-12 02:30:36
【问题描述】:
在 MVC、MVVM 或 MVP 中,我通常有一些模型,要么非常强调结合使用其他模型来获取所需的完整数据集,要么基本上需要连接到其他表(模型)。当我遇到这种情况时,我通常只是像往常一样扩展模型的功能,但会在我正在创建的新方法中加入到另一个表的连接。有时我很难决定我应该把这个功能/加入哪个模型,因为它使它依赖于不特定于该模型的东西。在使用利用数据模型的模式时,是否有更好的方法来处理关系?
这里有一些伪代码来帮助说明我在混入一些活动记录时的意思:
public static void getAll() {
this.db("sometable").join("anothertable", "column", "=", "anothercolumn").select();
}
现在,如果模型适用于sometable,我将通过在上述方法中加入another table 来创建某种依赖关系。现在sometable 的模型也处理anothertable,它有自己的独立模型。
【问题讨论】:
-
你有一点伪代码来说明这个问题吗?完全理解场景有点困难......
-
当然,我刚刚添加了一些。
-
select 是多余的;仅当将连接类型映射到另一种类型时才需要。
-
这是伪代码。它并不意味着工作,我是根据我过去使用的语言和框架的混合编写的。我不是问如何处理代码,而是更多关于如何处理一般情况。
标签: oop design-patterns model-view-controller mvvm mvp