使用Mongoid获取实际结果数组

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (16)

随着Rails的一个普通的ActiveRecord / SQL设置在控制台当我执行命令*.where*.all等我回来的记录项的实际阵列。但是,切换到Mongoid后,我反而回到了一个标准。我如何得到实际结果?

这是我现在得到的...

ruby-1.9.2-p180 :001 > App.all
 => #<Mongoid::Criteria
  selector: {},
  options:  {},
  class:    App,
  embedded: false>
提问于
用户回答回答于

当在Mongoid中查询一个模型时,它返回一个条件对象,它在从条件请求数据之前实际上不会运行该查询。

你所需要做的就是迭代结果,使用eachmap或任何数组方法,如下所示:

App.all.each do |app|
  puts app.name
end

或者,如果只想要数组,只需调用to_a关于标准:

App.all.to_a
用户回答回答于

扫码关注云+社区