Mongoose/Nodejs - 填充函数只返回用户的对象ID



目标:返回引用模型中的用户信息。

问题:我相信我的模型名称(缺乏约定(正在抛弃填充函数。我想返回我的用户名,但没有得到它。

这是我的用户模型:

const UserSchema = new Schema({
profile: {
firstName: { type: String },
lastName: { type: String }
},
});
module.exports = mongoose.model('user', UserSchema, 'user');

和我的物品模型:

const ItemSchema = new Schema({
user: {
type: Schema.Types.ObjectId,
ref: 'user',
},
const PlayLoop = mongoose.model('items', ItemSchema);

在我的控制器中,我的函数如下所示:

show(req, res, next) {
const id = req.params.id
Items.findById({_id: id})
.populate({
path:'User',
})
.exec(function(err, item) {
if (err) {console.log(err)}
console.log(item)
})
},

返回的是我的项目模型:

{  _id: ITEM_ID,
title: 'some title',
user: USER_ID,
}

对于用户,我想返回完整的个人资料信息。 思潮?

问题是客户端代码未指向正确的数据库。

最新更新