MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Documento incorporato senza Array?

Non puoi incorporare schemi in questo modo, con il ragionamento che quei documenti figlio sarebbero confusi con documenti completi, vedi questo thread di bug, dove è affermato:

il motivo per cui non abbiamo aggiunto questo supporto in passato è b/c questo ci fa chiedere se tutti i pre-hook verranno eseguiti allo stesso modo per il documento pseudo-figlio e implica che possiamo chiamare save() su quel bambino.

La risposta qui è condividere non lo schema, ma solo la definizione.

var userdef = { name: String };
var UserSchema = new Schema(userdef);
var BlogPostSchema = new Schema({author: userdef});

Ciò risulterebbe in un oggetto utente nidificato, senza effettivamente nidificare lo schema.