[英]Creating a dictionary schema with Mongoose
我正在嘗試使用 Mongoose 存儲對象字典。 意識到我失去了使用 Mixed 類型保存的更改檢測,我希望我可以創建一個不需要 Mixed 類型的模式。
有很多為對象數組創建模式的示例,但沒有為對象字典創建模式。 是否有可能做到這一點?
格式:
{
ObjectId : {
"attempts" : {
"response" : String,
"timestamp" : Date
},
"complete" : Boolean
}
}
mongoose
不支持字典。 架構中的字段名稱不能是動態的。 您應該使用原始對象(嵌入式文檔)並將其實現為字典。 但是,當您更改該字段時,不會有來自mongoose
驗證並在保存之前使用markModified
var fooSchema=mongoose.Schema({name:String, dic:{}});
//dic is your dictionary
更新:從 5.1 貓鼬有一個地圖類型: https : //mongoosejs.com/docs/schematypes.html#maps
你可以像這樣使用元作為字典的字典:
var UserSchema = new Schema({
meta: {
votes: Number,
favs: Number
}
first_name: String,
last_name: String,
profile_pic: String,
gender: String,
timezone: Number
date: { type: Date, default: Date.now },
updated: { type: Date, default: Date.now },
country: {id: Number, name: String}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.