Хорошо, так что моя проблема в том, что у меня многообразный вид, который работает.CouchDB multikey view с массивом
function (docu) {
if(!docu.deleted){
emit([docu.key1, docu.key2, docu.key3], docu);
}
}
Я пытаюсь добавить еще один ключ к этому уже многоэлементному массиву. Ключ я пытаюсь добавить массив строковых значений,
[
"test",
"test2"
]
Я запрашивая мой взгляд, используя PouchDB
и встроенный в метод запроса, код ниже.
database.query("views/viewTest", {
startkey: [key1, key2, key3, key4],
endkey: [key1, key2, key3, key4],
reduce: false
}, function (err, res) {
if (err) {
console.log(err);
alert(err);
} else {
console.log(res);
}
});
Где key4
- это мой новый массив. Мне немного повезло с моей функцией карты, изменив ее на emit([docu.key1, docu.key2, docu.key3, [docu.key4]], docu);
, но это работает только в том случае, если в массиве есть только один элемент, и мне нужно, чтобы он работал для нескольких элементов в массиве.
Я не могу понять, как настроить мой взгляд или запрос, чтобы использовать несколько элементов в моем массиве key4
.
Я попытался запрашивая с startkey
и endkey
, где key4
имел {}
толкнул в нее для endkey
, но это все возвращается. Мне нужны только значения, возвращаемые в массиве key4
, если они соответствуют другим клавишам.
Так просуммировать:
- Мой взгляд/запрос работает, прежде чем добавить в новый массив КЛЮЧ4.
- View/query работает, если в массиве key4 есть элемент ONE.
- Мне нужно, чтобы он работал для ВСЕХ элементов в массиве key4.
- Я пробовал несколько вещей и мог/не мог заставить это работать.
Любые предложения?
Они проблема заключается в том, что 'key4' из документа всегда будет один пункт повестки дня,' String', в то время как при поиске в 'запуске/endkey' это будет' 'Array' из String's , Поэтому мне нужно, чтобы «карта» могла захватить вход и протестировать, если «ключ4» из документа находится внутри клавиши «start/endkey »4 и испускает их. –