用moped / mongoid嵌套mongodb查询?

时间:2014-04-15 17:04:04

标签: mongodb mongoid moped

我想使用mongodb编写一些嵌套查询,但我对mongoid / moped非常新。为了这个例子,如下所示写一些朋友的朋友查询是否可以接受?

u1 = User.last # get some user
friends_of_friends = u1.friends.map do |friend|
                       User.find(friend.id).friends.map(&:name)
                     end

或者

u1 = User.last # get some user
friends_of_friends = u1.friends.flat_map(&:friends)

我非常有信心这些查询可行。然而,我不知道的是,单个查询是传递给mongo还是几个?

  • 我想要的:"编译"查询,发送,获取结果=>一个数据库调用,确保可怕性
  • 我不想要的:找到用户1,返回结果数组,并为每个找到的用户执行新的朋友请求=>很多数据库调用,失去了性能,绝对不是很棒!

提前致谢!

0 个答案:

没有答案