我是猫鼬的新手,我整天都在努力地了解猫鼬。我设法做一些简单的例子,但是现在我创建了两个模式:
首先是UserSchema,其中包含一些用户详细信息:
const UserSchema: mongoose.Schema = new mongoose.Schema ({
name: String,
email: String
});
第二个是MatchSchema巫婆,我想填充用户详细信息,但是我不确定是否可以执行以下操作:
const MatchSchema: mongoose.Schema = new mongoose.Schema ({
player_one: {
id: String,
score: Number,
player_details: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
},
player_two: {
id: String,
score: Number,
player_details: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
},
winner: String
},{timestamps: true});
我可能使用了无法正常工作的东西,任何帮助都会得到体现。
答案 0 :(得分:0)
您需要使用UserSchema创建一个Mongoose模型并将其命名为“ User”。然后,您可以使用MatchSchema创建一个Match模型。假设UserSchema和MatchSchema在同一文件中,则可以添加以下内容:
const User = mongoose.model('User', UserSchema)
const Match = mongoose.model('Match', MatchSchema)
然后,当您要用用户数据填充匹配模型时:
let data = Match.find({})
.populate('player_one.player_details')
.populate('player_two.player_details')