2013-09-03 5 views
0

현재 couchdb를 데이터베이스로 사용하고 있는데, couch db의지도 함수에서 동적 변수를 매개 변수로 사용하는 방법은 무엇입니까?지도 함수의 동적 변수 couch db

+0

map-reduce 프로 시저의 주요 원칙은 map() 함수 결과가 한 번 계산 되었기 때문에 문서에만 의존 할 수 있다는 것입니다. 당신이 달성하고자하는 것을 설명하십시오, 아마도 당신은 쇼 /리스트 기능을 사용해야합니다. –

답변

1

CouchDb에서보기에 매개 변수를 전달할 수 없습니다. 많은 경우 뷰가 이미 구축되었습니다. 필요한 쿼리를 처리하기 위해 뷰를 구조화해야합니다.

+0

추가 : 뷰를 기본으로 빌드하고 [list functions] (http://guide.couchdb.org/draft/transforming.html)을 사용하여 뷰를 변환 할 수 있습니다. 목록 함수는 사용자 쿼리의 사용자 지정 매개 변수를 처리하므로 문제를 해결합니다. 단점은 키 매개 변수로 뷰를 쿼리하는 것과 비교하여 그러한 쿼리의 전체 스캔 복잡성입니다. – Kxepal

1

couchdb에서 뷰의 맵 구성 요소는 사용자가 정의하고 디자인 문서에 포함됩니다. 그리고 이러한 기능이 그런 다음 _view/기능 startkey, endkey를 전달할 수 있습니다 http://localhost:5984/yourDatabase/_design/doc/_view/yourViewFunction

을 통해이

http://localhost:5984/yourDatabase/_design/doc/_view/yourViewFunction?key=value-pairs-stacked-with-&(ampersand)

같은 URL에 쿼리를 전달하고 찾고있을 수있는 동적 변수를 도달 할 수 있으며, 몇 가지 다른. 더 많은 연구를 위해 here을 읽으십시오.

호프 내 대답은 의미 =) 행운을 빌어 요!

+0

'key','startkey' 및'endkey' 매개 변수를 사용하여 변수에 변수를 전달하지 않고 뷰 색인을 조회합니다. – Kxepal

+1

@Kxepal. 나는 당신이 절대적으로 옳다고 생각하며, 요셉 몬이 찾고있는 것이 이것이라고 더 분명하게 지적 했음에 틀림 없다. 나는 조쉬몬을 코에 쓰고 싶지 않았는데, 그는 그가 표현을 혼란스럽게 만들었다 고 생각했다. 나는 전술과 좋은 예의 범절에서 그것을했다. 하지만, 당신 말이 맞아요. –