1
我試圖對我創建的PouchDB索引執行$ gte查詢。查詢不會出錯,但當應該有與該子句匹配的文檔時返回空數組。這個想法是讓所有的文檔都有最近30天的時間戳。存儲該值的屬性不在頂層,它屬於meta
屬性的一部分。例如。Pouchdb-從過去30天查找文檔
{
_id: "76e7f205-b8c3-4cc6-abfb-77c98ca3a0d4",
_rev: "1-47f49534aa364f5c654b9574fa085005",
...
meta: {
created: 1501841768486
createdBy: "[email protected]"
}
}
創建我的指數成功地利用了以下內容:
let thirtyDaysAgo = moment(Date.now()).subtract(30, 'days').format('x');
//selector: { 'meta.created': { $gte: thirtyDaysAgo } },
return recordingsDB.find({
selector: { meta: { created: { $gte: thirtyDaysAgo } } },
sort: [{'meta.created': 'desc'}],
use_index: 'recent'
}).catch(function (err) {
console.log(err);
});
我試圖查詢子屬性既不工作都語法風格:
recordingsDB.createIndex({
name: 'recent',
ddoc: 'recent',
index: {
fields: ['meta.created']
}
});
我然後使用查詢它。該查詢實際上不會失敗或導致任何錯誤 - 當我知道有文檔應該匹配該查詢時,它只返回一個空數組。
我不敢相信我沒有發現!謝謝 – Mark