我写了以下MongooseJS模式。字段"likers"是一个嵌入式记录,目前是一个带有两个键的POJO。嵌入式架构是否可以是哈希映射,每个"liker"字段都充当键?
这是哈希映射应该是什么样子:
const userlikers = {
{'100900800' : 'user'}
{'100989455' : 'user'}
{'109099985' : 'user'}
}
下面是当前架构
const userlikers = Schema({
users : {
type: Schema.Types.Mixed
}
})
const PicSchema = Schema ({
url : {
type : String,
required : true
},
desc : {
type : String,
required : true
},
likers : [userlikers],
created : {
by : {
type : Schema.Types.ObjectId,
ref : 'User',
required : true
},
at : {
type : Date,
default : Date.now
}
}
})
const Pic = mongoose.model('Pic', PicSchema);
module.exports = Pic;
我知道
已经很晚了,从猫鼬版本 5.10.9 开始,您可以使用映射而不是类型:Schema.Types.Mixed
const PicSchema = Schema ({
..............
........
likers : {
type: Map,
of: String
},
........
........
})