如何使用 couchdb-lucene 索引嵌套对象
How can I index nested object using couchdb-lucene
索引函数
当我尝试在索引函数中索引 doc
的子 属性 时,例如
ret.add(doc.complaint.status, {field: 'status', type: 'string'})
couchdb-lucene returns 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"
returns500
实际上问题是 lucene 索引每个文档,包括 _design/view 本身,所以我只需要检查 属性 是否存在
索引函数
当我尝试在索引函数中索引 doc
的子 属性 时,例如
ret.add(doc.complaint.status, {field: 'status', type: 'string'})
couchdb-lucene returns 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"
returns500
实际上问题是 lucene 索引每个文档,包括 _design/view 本身,所以我只需要检查 属性 是否存在