[英]mongoose nested document
我想要的是僅在meta中返回_id和數據(不是我的字段,但是由於mongoose具有此主要示例): mongoose嵌入文檔doc
因此,我沒有特別尋找任何_id,而是正在尋找meta.votes.length> 0或meta.fans.length> 0的記錄。目前,我正在:
Model.find({}, ['_id','meta'], function (err, data) { callback(null, data); });
我沒有/ data /的記錄。 我猜不找到這些集合的替代方法是一種將它們過濾掉的方法?
編輯:我暫時解決了我的問題:
use : { type: Boolean, default: 1 },
盡管這可能是一項功能(顯示和隱藏結果-例如舊數據),但我不認為這是/ solution /。
嗯, meta.votes
和meta.fans
都只是Number對象,所以我不認為您想要meta.fans.length
像int一樣直接訪問它們。
此查詢應僅檢索_id和meta信息,以獲得投票> 0
Model.find({ "meta.votes" : { $gt : 0 } }, ['_id','meta']).exec(function(err, data) {
callback(null, data);
});
並且此查詢應僅檢索粉絲> 0的_id和元信息
Model.find({ "meta.fans" : { $gt : 0 } }, ['_id','meta']).exec(function(err, data) {
callback(null, data);
});
您可以像這樣將兩個查詢組合在一起:
Model.find({ $or : [ { "meta.votes" : { $gt : 0 } },
{ "meta.fans" : { $gt : 0 } } ] }, ['_id','meta']).exec(function(err, data) {
callback(null, data);
});
您應該會看到如下回報: { _id: 5001b3ce7cf4b534a3000002, meta: { votes: 1, fans: 1 } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.