mongoid用数组创建文档

时间:2017-02-19 00:39:25

标签: ruby-on-rails mongoid

我有两个mongoid模型:

bid.rb和supplier.rb

class Bid
  include Mongoid::Document
  field :amount, type: BigDecimal
  embeds_one :supplier
end

我想查询嵌入式:supplier :name并在JSON响应中显示:bid :amount

我尝试了各种各样的方式,我得到的最远的是: Bid.all.pluck(:supplier, :amount)仅返回供应商ID和金额。

现在我可以编写bid_data = Bid.all来获取以下JSON响应:

{"bid_data":
[{"_id":{"$oid":"58a0a9a531d77f01529a22ba"},
    "amount":"5335.0",
    "supplier":{"_id":{"$oid":"58a087b131d77f01529a229c"},"name":"Ford","comment":3}
    }]}

如何查询控制器中的Bid.supplier.name

理想情况下,我想要像Bid.all.pluck(:supplier.name, :amount)

这样的东西

1 个答案:

答案 0 :(得分:0)

当你说:

embeds_one :supplier

您真的说bids集合中有一个名为Hash的{​​{1}}字段,而supplier应该包含在通常Hash中} 东西。这意味着您可以像查看任何其他Mongoid::Document

一样查询supplier
Hash