Se si dispone di array di documenti secondari, Mongoose crea automaticamente id per ciascuno. Esempio:Stop Mangusta dalla creazione di proprietà _id per gli elementi dell'array di sottodocumenti
{
_id: "mainId"
subdocArray: [
{
_id: "unwantedId",
field: "value"
},
{
_id: "unwantedId",
field: "value"
}
]
}
C'è un modo per dire Mongoose di non creare ID per gli oggetti all'interno di un array?
salterà questo campo '_id' anche nella raccolta subSchema, o solo nel caso in cui il subSchema viene utilizzato per incorporare come matrice di elementi di sotto-documento? Lo chiedo in particolare a causa della mia [domanda] (http://stackoverflow.com/questions/38151433/mongoose-inserts-extra-id-in-array-of-objects-corresponding-to-related-entity) su SO oggi. –
Uso due livelli di raccolte di sottoschemi nidificati. In altre parole, ho una collezione subSchema simile al tuo esempio. All'interno di questo, utilizzo un'altra raccolta di sotto-schemi diversa. Voglio che solo le istanze del modello del sotto-schema di primo livello non utilizzino gli ID, ma le istanze del modello dello schema secondario di secondo livello (nidificate) devono avere id. Quando utilizzo la soluzione, cioè specificando '{_id: false}', entrambi i livelli del sottoprogetto sono privi di id. Qualche modo per aggirare questo comportamento? –
Hai provato, per il terzo livello di impostare '{_id: true}'? – throrin19