【发布时间】:2019-12-30 19:51:44
【问题描述】:
我正在使用 Express、Mongoose 和 Mongodb。我有两个模型,一个用于用户,另一个用于审核,如下所示:
var User = mongoose.Schema({
firstName: String,
lastName: String,
email: String
});
mongoose.model("User", User);
var Review = mongoose.Schema({
foodRating: Number,
serviceRating: Number,
locationRating: Number,
wouldReturn: boolean
});
mongoose.model("Review", Review);
我想以评论属于用户的方式链接两个模型。
我阅读了有关 ObjectId 的信息,但不清楚如何实现它。我应该创建它,然后使用它,像这样:
const MyObjectId = mongoose.Types.ObjectId;
然后覆盖我想用它链接到我的第一个模型的模型的_id?
var User = mongoose.Schema({
firstName: String,
lastName: String,
email: String,
review: [MyObjectId] // retrieves model below from its _id:MyObjectId
});
mongoose.model("User", User);
var Review = mongoose.Schema({
_id: MyObjectId, // overriding _id with ObjectId
foodRating: Number,
serviceRating: Number,
locationRating: Number,
wouldReturn: boolean
});
mongoose.model("Review", Review);
这是正确的吗?或者我该怎么做?
【问题讨论】: