Javascript 没有数组不能嵌套模式的原因是什么
我只是想知道为什么mongoose模式定义中不允许这样的内容:Javascript 没有数组不能嵌套模式的原因是什么,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我只是想知道为什么mongoose模式定义中不允许这样的内容: var NameSchema = new mongoose.Schema({ first: {type: String, trim: true }, last: {type: String, trim: true } }); var UserSchema = new mongoose.Schema({ name: NameSchema, // this line causes an error a
var NameSchema = new mongoose.Schema({
first: {type: String, trim: true },
last: {type: String, trim: true }
});
var UserSchema = new mongoose.Schema({
name: NameSchema, // this line causes an error
age: {type: Number}
});
这似乎是一个设计决定,我只是想知道我是否可以得到一个解释,为什么它不被支持
谢谢 可以使用以下方法嵌套架构:
name: [{ some: "props" } ]
或
直接给出模式定义(不使用“type:…”)的问题在于Mongoose无法区分选项对象和模式对象。Mongoose会认为NameSchema实际上是一个选项对象(包含类型、修剪等选项)
name: [NameSchema]