2013-01-05 2 views
2

나는 mongodb와 상호 작용하기 위해 Clojure와 congomongo를 사용하고있다.congomongo의 가져 오기를 사용하여 중첩 된 문서를 쿼리하는 방법은 무엇입니까?

나는 다음과 같은 구조의 수집 시험에서 문서를 가지고 -

{:_id #<ObjectId 50e8a4de2b5e29d6f4ab3d66>, :fields {:project {:key "test"}}} 

및 포함 된 문서의 필드를 기준으로 조회 할 : -

(fetch :test {:fields {:project {:key "test"}}}) 

나는 다음과 같은 실행

오류가 발생합니다. -

"IllegalArgumentException No va 루는 키 제공 : {: 필드 {: 프로젝트 {: 키 "테스트"}}} clojure.lang.PersistentHashMap.createWithCheck (PersistentHashMap.java:89) "

을 내가 그쪽으로 MongoDB를 콘솔에서 다음 실행하면 올바른 문서가 반환됩니다 -

db.test.find({"fields" : {"project" : {"key" : "test"}}}) 

덕분에 어떤 조언을 그냥 누락있는 것처럼

+0

이 코드의 서식을 수정 곳. –

답변

1

가 보이는 : 키워드

(fetch :test :where {:fields {:project {:key "test"}}}) 
+0

실제로! 고맙습니다 – user1781563

관련 문제