【发布时间】:2016-11-07 20:15:24
【问题描述】:
Web 应用程序通常有一个数据库。假设在这个数据库中有一个表 "user" 。我经常看到的是开发人员创建了一个 ORM 类来将数据从数据库中取出。例如,“用户”类只是数据库中数据的容器。
那不是我做的。 “用户”是对用户行为的封装。所有对用户做某事的代码都在“用户”类中。添加ORM是因为数据通常存储在数据库中。我总是定义 2 个类:一个“用户”/“用户列表”类(用户集合)和一个用户(个人用户)。 "users"/"userlist" 类也代表表,"user" 代表个人记录(例如检查密码是否正确)。
我注意到许多 ORM(如 ActiveRecord)系统并没有区分表和单个记录。只有一类“用户”。
我的问题如下:
是否有任何 ORM 系统可以区分表和记录(如上例中的用户/用户)
你如何使用ORM,只用于从数据库访问数据或用于真正的oop。
如果 ORM 不区分表和记录,你将处理多条记录的代码放在哪里
您认为结合 oop 和 ORM 的好方法是什么?
【问题讨论】:
标签: sql database oop activerecord orm