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

query a campi incrociati o virtuali per salvare i dati utilizzando mongoose

Stai cercando di implementare una relazione uno-a-molti in mongo. Puoi seguire questo collegamento.

Per quanto riguarda il modello:

timesheet-main.model [Genitore]

{
    "data": [{ type: Schema.Types.ObjectId, ref: timesheet-data.model }]
}

timesheet-data.model [Bambino]

{
    "timesheet-main-id": { type: Schema.Types.ObjectId, ref: timesheet-main.model },
}

Considera i campi aggiuntivi secondo la scelta. Sto solo aggiungendo campi per una relazione uno-a-molti.

Per aggiungere dati -

const parent = new TimesheetMain({
    _id: new mongoose.Types.ObjectId(),
    data: []
})
const child  = new TimesheetData()
child.timesheet-main-id = parent._id
child.save(err => HandlerErr)
parent.data.push(child)
parent.save(err=> HandlerErr)