填充在 nodejs 和 mongoose 中不起作用

populate in nodejs and mongoose not worked

我有一个用于保存信息的架构,在此信息中我有一个 userId,我想 return 该架构的信息和 return 用户表单的信息 user 架构 .

旅行请求架构:

 const TravelRequestSchema = new Schema({
    userId: { type: Schema.Types.ObjectId, ref: "User" }
    description: { type: String, require: true }
}, {
    toObject: { virtuals: true },
    toJSON: { virtuals: true }
});

用户架构:

 const UserSchema = new Schema({
    firstName: { type: String },
    lastName: { type: String },
    phoneNumber: { type: String },
    email: { type: String, defult: null }
},{
        toJSON: { virtuals: true }
});

现在我写这个问题是为了获取信息:

await TravelRequestModel.find({})
        .populate('User')
        .exec();

但它不是 return 我的用户信息,它只是 return UserId

现在我该如何解决这个问题??

您希望查询填充特定字段,而不是模型名称

await TravelRequestModel.find({})
        .populate('userId')
        .exec();

这是因为如果您有多个引用同一模型的字段,您希望能够选择要填充的字段