我在猫鼬中具有以下架构(简化)。一个用户有多个帖子,一个配置文件存储在单独的架构中。现在,假设一个用户只能有一个userProfile。 Post和UserProfile模式都有对User模式的引用。我想find()
张贴一些帖子,并为每个帖子填充用户的photoURL
。
简单的populate()
不会解决问题,因为它可以使我获得关联的用户,但不能获得关联的userProfile。还有另一种方法吗?
如果没有,并且我必须对架构进行结构更改,是否可以解决以下注意事项:
谢谢。
// Parent schema
var UserSchema = new Schema({
username: {
type: String,
unique: true,
required: true,
trim: true
},
password: {
type: String,
required: true
}
});
// Child schemas
var PostSchema = new Schema( {
author: {
type: Schema.Types.ObjectId,
ref: 'User',
required: true
},
content: {
type: String
}
});
var UserProfileSchema = new Schema({
userID: {
type: Schema.Types.ObjectId,
ref: 'User',
required: true
},
photoURL: {
type: String,
trim: true
}
});