【发布时间】:2013-11-20 23:34:18
【问题描述】:
我在 Mongoid 中有一个 type Array 的 category 字段。
例如。类别:["val1","val2","val3"]
现在我想用 `category: ["val1","val2"] 查询这个模型,这样它就返回了
的合并Model.where(category: "val1") 和 Model.where(category: "val2")
我可以为数组的每个元素单独执行此操作,但我猜这会很慢,因为对于每个单独的元素,它将搜索所有文档。
我也尝试过Model.all_of({category: "val1"},{category: "val2"}).all,但这不起作用。
我应该怎么做?
【问题讨论】:
-
三读希望更准确。试试:Model.select{|m|m.category.include?("val1") || m.category.include?("val2")}(前提是 category 字段永远不是 nil 值)。
-
第一个更加健壮和简单
标签: ruby-on-rails mongoid