【发布时间】:2015-07-23 15:19:37
【问题描述】:
在我的公司,我们使用基于“活动记录模式”的模型,模型方法总是与数据库中单个记录的操作相关,例如:
Class User {
int id;
string Name;
public boolean Find (id); // SQL / ORM to return the object based on the user's Id;
public boolean Save (); // SQL / ORM to save / update a user
public boolean Delete (); // SQL / ORM to delete a user.
}
// Create the user "John"
Set objUser = new User ();
objUser.Name = "John";
objUser.Save ();
我的问题是,关于数据库实体“用户”,我们有针对表级别而不是记录的方法,例如方法“getAllActiveUsers”,它返回所有活动用户的查询对象。 这种情况最终出现在自己的 ActiveRecord 模型中,在我看来这没有意义.. 你能帮我理解什么是最明智/最优雅的处理这种情况吗? 我阅读了一些关于网关和存储库模式的内容,可能对此有用,但想知道是否有人遇到同样的问题以及您是如何解决的......
谢谢!!
【问题讨论】:
标签: java c# php design-patterns