2011-12-23 41 views
1

我想用「或」語句查詢MongoMapper。我發現如何與蒙戈直接做一個例子:使用「或」語句時使用mongomapper

db.foo.find({ $or : [ { a : 1 } , { b : 2 } ] }) 

所以我認爲MongoMapper查詢應該是這個樣子的:

Foo.all(:or => [ {:a => 1}, {:b => 2} ]) 

但事實並非如此。

任何人都可以幫忙嗎?

回答

3

你想要這樣的:

Foo.where(:$or => [ {:a => 1}, {:b => 2} ]) 

或本作MongoMapper:

Foo.all(:$or => [ {:a => 1}, {:b => 2} ]) 

MongoMapper的查詢是幾乎你在MongoDB的外殼使用查詢的直音譯。

+0

工程,非常感謝! – smintz 2011-12-23 22:01:04

2

用途:Foo.where(: '$或'=> [{:A => 1},{:B => 1}])

+0

哎呀!對不起,誤讀。更新:固定! – 2011-12-23 21:42:52