2011-12-23 1 views
1

"or"문으로 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

2

사용 : Foo.where ('$ 또는'=> [{A => 1}, {: B => 1}])

+0

웁스! 죄송합니다, 오독. 업데이트 : 수정 됨! –