我正在使用猫鼬分页插件,并且在填充其他文档时遇到问题。简单填充工作正常,但是如果我要选择 selected 字段,则会显示填充数据中的所有字段,并且所有主要文档字段都将被删除。 我正在使用Node Express ...
这是我的代码。
var page = (req.body.page)?req.body.page:1;
var perPage = (req.body.itemsPerPage)?req.body.itemsPerPage:10;
var query = {};
var options = {
select:'typeDesc',
populate: 'hospitalType',
lean: true,
limit: perPage,
page: page };
hospital.paginate(query,options).then( function(result) {
res.json(result);
})},
如您所见,我只想要typeDesc,但获得了所有数据,并且我从Hospital提取的主要数据也已删除。
答案 0 :(得分:1)
这是解决方案
var page = (req.body.page)?req.body.page:1;
var perPage = (req.body.itemsPerPage)?req.body.itemsPerPage:10;
var query = {};
var abc = ({ path: 'hospitalType', select: 'field which you want to show' });
var options = {
populate: abc,
lean: true,
limit: perPage,
page: page };
hospital.paginate(query,options).then( function(result) {
res.json(result);
})},
我修改了代码,仅更改了填充路径,这里的窍门是您需要在其他变量中描述文档和所选字段,并在options字段中使用它。 由于没有数据库,我现在无法测试,但是我很肯定它将正常运行。随时对此发表评论。