Как я могу проиндексировать вложенный объект с помощью coachdb-lucene

Индексная функция

Когда я пытаюсь проиндексировать подсвойство doc в функции индексации, например ret.add(doc.complaint.status, {field: 'status', type: 'string'}) coachdb-lucene, возвращает 500.

function (doc) {
  var ret = new Document();

  ret.add(doc.customerName, {
    type: 'string',
    field: 'customerName'
  });

  ret.add(doc.complaint.status, {
    type: 'string',
    field: 'status'
  });

  ret.add(doc.complaint.numberOfCoupons, {
    type: 'int',
    field: 'numberOfCoupons'
  });

  return ret;
}

Объект, который существует в CouchDB

{ "customerName": "Roman Maltsev", "complaint": { "status": "In progress", "numberOfCoupons": 10 } }

Запрос с использованием прокси GET http://localhost:5984/_fti/local/complaints-management-rom/_design/find/all?q=status:"In progress" возвращает 500


person peramor    schedule 10.09.2017    source источник


Ответы (1)


На самом деле проблема заключалась в том, что lucene индексирует каждый документ, включая сам _design/view, поэтому мне нужно просто проверить, существует ли свойство или нет.

person peramor    schedule 10.09.2017