Сложные динамические запросы в CouchDB - PullRequest
6 голосов
/ 19 июля 2010

Я начинаю с CouchDB и мне нужна небольшая помощь.

У меня есть много данных, которые перечислены пользователю в таблице. Пользователь должен иметь возможность фильтровать эти данные по нескольким динамическим параметрам.

например. предположим, что таблица с полями date, author, tags, is_published, title.

Пользователь должен иметь возможность указать любой фильтр, например "Содержит тег 'couchdb' и is_published = true" или "Дата в прошлом месяце, а автор - я".

Как такие запросы работают в CouchDB?

Ответы [ 2 ]

7 голосов
/ 19 июля 2010

Я думаю, что стандартный ответ для сложных запросов - использовать Lucene.Возможно, не тот ответ, который вы искали, но Lucene имеет более продвинутые возможности фильтрации.

Взгляните на couchdb-lucene на github .На вики-сайте couchDB есть еще одна страница о полнотекстовой индексации .

3 голосов
/ 20 июля 2010

Готовое решение заключается в том, что вы создаете эти запросы для них заранее в ваших проектных документах.Если вы чувствуете, правильно или неправильно, что это ограничит ваших пользователей, то следуйте совету андюка и посмотрите на couchdb-lucene.

Хотя я бы с подозрением отнесся к тому, что вы не можете делать то, что выищу в нескольких картах / уменьшаю запросы.Помните, что вы можете вызывать () более одного раза в функции карты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...