如何填充新创建的mongoose文档?

如何填充新创建的mongoose文档?,mongoose,promise,mongoose-schema,mongoose-populate,Mongoose,Promise,Mongoose Schema,Mongoose Populate,我有一个例子,我正在检查一个文档是否已经存在,如果它不存在,我正在创建一个新文档。我需要在文档中填充2个字段。我的问题是,.create方法不支持.populate方法,因为如果我尝试这样做,会出现错误。此外,populate方法对返回的文档也不起作用。如何正确填充新创建的文档?这是我的密码: Favorite.create({ user: req.user._id, dishes: req.params.dishId }) .then((favorite

我有一个例子,我正在检查一个文档是否已经存在,如果它不存在,我正在创建一个新文档。我需要在文档中填充2个字段。我的问题是,.create方法不支持.populate方法,因为如果我尝试这样做,会出现错误。此外,populate方法对返回的文档也不起作用。如何正确填充新创建的文档?这是我的密码:

Favorite.create({ user: req.user._id, dishes: req.params.dishId })
                    .then((favorite) => {
                        favorite.populate('user');
                        favorite.populate('dishes');
                        console.log('Favorite marked', favorite);
                        res.statusCode = 200;
                        res.setHeader('Content-Type', 'application/json');
                        res.json(favorite);
                    }, (err) => next(err))
            }
        })
        .catch((err) => next(err));

可以在Model.find方法之后使用populate方法

创建的收藏夹将具有_id值,因此您可以通过_id查找收藏夹,然后像这样填充用户和菜品:

Favorite.findById(Favorite.\u id)
.填充(“用户”)
.填充(“盘子”)
所有代码:

Favorite.create({user:req.user.\u id,dish:req.params.dishId})
.那么(
收藏夹=>{
日志(“收藏夹标记”,收藏夹);
const result=Favorite.findById(Favorite.\u id)
.填充(“用户”)
.填充(“盘子”);
res.statusCode=200;
res.setHeader(“内容类型”、“应用程序/json”);
res.json(结果);
},
err=>next(err)
)
.catch(err=>next(err));