L'avviso mostra già "Puoi nidificare solo usando riferimenti o array". Questo è un disegno a mangusta.
Ma quello che puoi fare è:
var MySchema = new mongoose.Schema({
objectId: String,
parent: {
type: mongoose.Schema.ObjectId,
ref: 'MySchema'
},
})
Questo utilizzerà uno schema all'interno di uno schema, quindi puoi utilizzare un "pre-salvataggio" per aggiornare i dati del tuo genitore. Oppure puoi utilizzare una matrice di riferimenti e mantenerli con un solo elemento.
Quello che devi fare è esportare gli schemi e non i modelli, quindi puoi nidificarlo. in questo modo:
module.exports = MySchema;
Poi ho qualche appModel per impostare i modelli della mia raccolta di schemi, come questo (app_model.js):
if(mongoose.modelNames().indexOf('mySchema') < 0) mongoose.model('mySchema', mySchema);