2013-01-10 3 views
8

meteorjs 컨텍스트 외부에서 의도 한대로 MongoDB를의 $ 또는 운영자의 작품 :

db.users.find({$or: [{email: '[email protected]'},{city: 'atlanta'}]}); 

I 이메일 [email protected] 또는 애틀랜타의 도시가있는 모든 문서에 대한 결과를 얻을 수 있습니다.

유성 구문에 동일한 쿼리는 동일한 결과를 얻을하지 않습니다 나는 유성 문서 읽은

Users = new Meteor.Collection("users"); 
Users.find({$or: [{email: '[email protected]'},{city: 'atlanta'}]}); 

- http://docs.meteor.com/#find을 - 그리고 그것에 대해 아무 말도하지 않기 때문에, 내가 있으리라 믿고있어 그것은 mongodb 1.6+ 인스턴스와 똑같이 실행되어야합니까?

+0

새로운 결과와의 차이점은 무엇입니까? – SomeKittens

+1

SomeKittens, Cursor가 모든 레코드를 반환하고 가져온 레코드가 정확한 숫자를 반환했습니다. 내 테스트를 위해 필자는 필자의 컬렉션에 6 개의 문서만을 가지고 있고, find()는 6을 모두 반환했고, 일치하는 3을 정확하게 가져온다. – gamengineers

답변

20

find은 커서 개체를 반환합니다. 값 배열을 가져 오려면 fetch을 사용해야합니다. 시도해보십시오.

console.log(Users.find({$or: [{email: '[email protected]'},{city: 'atlanta'}]}).fetch()); 
+0

멋진데, 고맙습니다. –

+0

왜 이런 행동을합니까? –

+0

@HaikalNashuha 여기에 커서에 관한 모든 것을 읽어보십시오 : http://stackoverflow.com/questions/3861558/what-are-the-benefits-of-using-database-cursor – mjhm

관련 문제