2011-05-11 3 views

답변

2

#find 몽고 :: 커서 객체가 아닌 실제 결과를 반환합니다. 먼저 cursur (@bs)를 결과가있는 배열로 변환 한 다음 json으로 렌더링해야합니다. 이 커서이기 때문에 당신이 결과를 반환하거나 반복 시작하거나하면, 다음 to_a 호출이 모든 결과를 반환하지 않습니다

render :json => @bs.to_a.to_json 

참고. 결과 집합을 재설정하려면 rewind!으로 전화해야합니다.

> @bs.to_a 
# => [{"_id" => BSON::ObjectID.....] 
> @bs.to_a 
# => [] 
> @bs.rewind! 
# => true 
> @bs.to_a 
# => [{"_id" => BSON::ObjectID.....] 
+0

감사합니다. 커서를 배열로 변환하는 방법은 무엇입니까? 그것을하는 간단한 방법이 있습니까? – Donald

+0

나의 예제에서'@ bs.to_a' 부분은 당신을 위해 그것을합니다. 그런 다음 JSON 데이터를 얻기 위해 배열에서'to_json'을 호출합니다. –

+0

나는 여전히 []를 얻고 있지만 @bs는 결과를 반환하고 있습니다. – Donald

관련 문제