Как выполнить параметризованный запрос на CouchDB

Я хотел бы использовать CouchDB для хранения некоторых данных для меня, а затем использовать RESTful API-вызовы для получения данных, которые мне нужны. Моя база данных называется «тест» и все мои документы имеют похожую структуру и выглядят примерно так (где hello_world - идентификатор документа):

"hello_world" : {"id":123, "tags":["hello", "world"], "text":"Hello World"}
"foo_bar" :{"id":124, "tags":["foo", "bar"], "text":"Foo Bar"} 

Что я хотел бы сделать, так это чтобы мои пользователи отправляли запрос, например: «Дайте мне все документы, содержащие слова« привет мир », например. Я играл с представлениями, но, похоже, они позволят мне переместить только одно или несколько из этих значений в "ключ". часть функции карты. Это дает мне возможность сделать что-то вроде этого:

http://localhost:5984/test/_design/search/_view/search_view?key="hello"

Но это не позволяет мне разрешать пользователям указывать их строку запроса. Например, что если они искали «Привет, мир»? Мне нужно выполнить два запроса: один для "привет" и один для "мира" тогда мне нужно написать кучу javascript, чтобы объединить результаты, удалить дубликаты и т. д. (YUCK!). Что я действительно хочу, так это уметь делать что-то вроде этого:

http://localhost:5984/test/_design/search/_view/search_view?term="hello world"

Затем используйте параметр «привет мир» в функциях представления / уменьшения, чтобы найти все документы, которые содержат оба слова "привет" и "мир" в массиве тегов. Это возможно даже с CouchDB? Есть ли другой способ сделать это в представлении, о котором я не думаю?

Ответы на вопрос(2)

Ваш ответ на вопрос