我正在尝试在CouchDB中创建一个分页索引视图,其中列出了每个找到的第N个文档的doc._id.
我编写了以下map函数,但pageIndex变量不能可靠地从1开始 - 实际上它似乎根据发出的值或索引长度任意改变(例如50,55,10,25 - 都以不同的方式开始文件,虽然我似乎得到了正确的文件数量).
function(doc) {
if (doc.type == 'log') {
if (!pageIndex || pageIndex > 50) {
pageIndex = 1;
emit(doc.timestamp, null);
}
pageIndex++;
}
}
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?CouchDB专家将如何构建此视图?
请注意,我不想使用其他地方提到的"startkey + count + 1"方法,因为我希望能够跳转到特定页面或最后一页(用户期望和所有),我我希望有一个友好的"?page = 5"URI而不是"?startkey = 348ca1829328edefe3c5b38b3a1f36d1e988084b",我宁愿CouchDB完成这项工作,而不是填补我的应用程序,如果我能帮助它.
谢谢!