【发布时间】:2014-10-09 13:56:13
【问题描述】:
如何对嵌入关联的集合执行查询
class SaleInvoice
include Mongoid::Document
include Mongoid::Timestamps
embeds_many :sale_invoice_lines, :order => 'numlig ASC'
field :code, type: String
end
class SaleInvoiceLine
include Mongoid::Document
include Mongoid::Timestamps
belongs_to :element, primary_key: :code, foreign_key: :codeelem
field :numlig, type: Integer
field :codeelem, type: String
end
class Element
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Tree
has_many :sale_invoice_lines, primary_key: :code, foreign_key: :codeelem
field :code, type: String
end
查询
SaleInvoice.only(:_id,:code, "sale_invoice_lines.code","sale_invoice_lines.numlig")
.where("sale_invoice_lines.codeelem" => {"$in" => Element.all.map {|e| e.code}}).all
如何获取数据 sale_invoice_lines.code 和 sale_invoice_lines.codeelem ?
我试试这个
s[0].sale_invoice_sales[0].code
但我有以下错误
undefined method `sale_invoice_sales' for #<SaleInvoice:0x56447526>
【问题讨论】:
标签: ruby-on-rails mongodb mongoid