[英]Adding support for multiple subdocuments within a mongoose schema?
I just started using mongoose, and I declared a schema for my data. 我刚开始使用猫鼬,并且为我的数据声明了一个架构。 I'm wondering how I can declare more subdocuments as the same type. 我想知道如何将更多子文档声明为同一类型。 Say I wanted to add a second or third location subdocument, how would I do that? 假设我要添加第二个或第三个位置子文档,我该怎么做?
var nest_schema = mongoose.Schema({
company_name: String,
website: String,
chain: Boolean,
date: {
date_added: Date,
date_lastupdated: { type: Date, default: Date.now},
},
rating: {
yelp_rating: Number,
yelp_reviews: Number,
user_rating: Number,
},
locations: {
location_number: Number,
location_name: String,
address: String,
phone: String,
hours: {
Monday: String,
Tuesday: String,
Wednesday: String,
Thursday: String,
Friday: String,
Saturday: String,
Sunday: String,
},
drinks: {
drink: String,
sizes: {
small: Number,
medium: Number,
large: Number,
}
}
}
});
Define another schema and embed it in your primary schema: 定义另一个模式,并将其嵌入到主模式中:
var nest_schema = mongoose.Schema({
company_name: String,
website: String,
chain: Boolean,
date: {
date_added: Date,
date_lastupdated: { type: Date, default: Date.now},
},
rating: {
yelp_rating: Number,
yelp_reviews: Number,
user_rating: Number,
},
locations: [locationSchema],
drinks: [drinkSchema]
});
var locationSchema = mongoose.Schema({
number: Number,
name: String,
address: String,
phone: String,
hours: {
Monday: String,
Tuesday: String,
Wednesday: String,
Thursday: String,
Friday: String,
Saturday: String,
Sunday: String,
}
});
You'll probably also want to make the drinks its own schema as well: 您可能还希望将饮料做成自己的模式:
var drinksSchema = mongoose.Schema({
drinks: {
drink: String,
sizes: {
small: Number,
medium: Number,
large: Number,
}
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.