有更好的方法吗?
class User
embeds_many :groups
def group(group_id)
gid = Moped::BSON::ObjectId(group_id)
self.groups.each.detect{|group| group.id == gid}
end
end
class Group
embedded_in :user
end
我正以这种方式访问该群组:
User.new.group(group_id)
如果用户有1000个嵌入式组(假设)那么这是否意味着我将不得不迭代1000个?有没有更好的方式来访问特定的组?
答案 0 :(得分:2)
您可以像普通模型一样查询groups
的{{1}}属性。例如,如果您想通过其ID找到特定的User
:
Group
也可以使用my_user.groups.find(group_id)
查询:
where