我有以下 Mongoose 模式代码
var EstacionSchema = new Schema({
nombre : {type : String, required: true, unique: true}
, zona : {type : String, required: true}
, rutas : [Ruta]
})
mongoose.model('Estacion', EstacionSchema)
var RutaSchema = new Schema({
nombre : {type : String, required: true, unique: true, uppercase: true}
, estaciones : [Estacion]
})
mongoose.model('Ruta', RutaSchema)
但是当我尝试它时它显示
ReferenceError: Ruta is not defined
我不确定在 mongoose 中声明模型时如何处理这种循环模式或如何处理多对多关系。
最佳答案
首先,您引用了不存在的变量。您可以通过 RutaSchema
或 mongoose.model('Ruta');
引用它。
我会试试
var EstacionSchema = new Schema({
nombre : {type : String, required: true, unique: true}
, zona : {type : String, required: true}
})
mongoose.model('Estacion', EstacionSchema)
var RutaSchema = new Schema({
nombre : {type : String, required: true, unique: true, uppercase: true}
, estaciones : [EstacionSchema] // or mongoose.Model('Estacion');
})
// Add reference to ruta
EstacionSchema.add({rutas: [RutaSchema]});
mongoose.model('Ruta', RutaSchema)
关于javascript - Mongoose 的循环引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10023624/