我现在真的很困惑,希望你能帮我找到方法:)
假设我有 2 个模型:
- 用户
- 团体
每个用户可以是一个或多个组的一部分,每个组可以有一个或多个用户。这两个模型都是用 ORM 构建的(我正在使用 Kohana 3.2 进行开发,但框架在这里可能并不那么重要)。
当我想将用户添加到组时,问题就来了,我只有用户 id 和组 id。
$user = ORM::factory('user', $user_id);
$group = ORM::factory('group', $group_id);
$group->add('user', $user);
- 首先我应该通过 id 加载用户
- 其次,我应该按 id 加载组
- 然后我应该将用户添加到组中
所以我应该有 3 db 请求。但我想用一个请求来解决这个问题。
我正在考虑创建一个辅助类:组有一个方法 *add_user* 接受 2 个参数(group_id,user_id),在这个方法中,我将发出一个数据库请求,在 *groups_users* 表中插入一条记录,插入组中的用户。
有什么更好的方法呢?