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

Archiviazione di array con Doctrine e MongoDB

Se devi memorizzare valori non mappati a una classe di documenti in un array, puoi utilizzare la collection mappatura dei campi, che esegue il mapping a un array di base in MongoDB. C'è anche un hash type, che allo stesso modo converte un array associativo in PHP in un oggetto in MongoDB senza mappare nulla al suo interno.

Se "Tipo" nel tuo esempio è una classe di documenti mappati, ti consigliamo di utilizzare un EmbedMany relazione, che memorizzerà uno o più documenti mappati in una matrice all'interno del documento principale. All'interno di MongoDB, questo sarà rappresentato come un array di oggetti, che è simile a quello che potresti fare tu stesso con la collection campo (memorizzazione di un array di array associativi); tuttavia, ODM utilizzerà la mappatura EmbedMany per reidratare quegli oggetti nelle istanze del documento.