我无法使用OR:
在Mongomapper中将这两个范围链接在一起scope :comment_is_nil, where(:comment => nil)
scope :post_not_blank, where(:post.ne => "")
它应返回注释不为nil的模型对象,或者帖子不为空。
这不起作用:
Model.where("$or" => [{:comment_is_nil, :post_not_blank])
有什么想法吗?
答案 0 :(得分:2)
链接范围是和操作,因此M.comment_is_nil.post_not_blank
无法正常工作。 MongoDB's or syntax看起来像这样:
Model.where(
:$or => [
{ :comment => nil },
{ :post.ne => '' }
]
)
因此,您需要通过手动扩展范围来为其提供一系列单独的条件。