Ho una richiesta che corpo contiene dati e _idMongoose.js: come implementare la creazione o l'aggiornamento?
Qual è il modo migliore per implementare il codice che verrà aggiornato se il record con _id esiste e ne creerà uno è non c'è nessuno? Il mio codice:
var obj = req.body;
Model.findById(obj._id, function(err, data){
if (!data){
var model = new Model(obj)
model.save(function(err, data){
res.send({method: 'create', error: err, data: data})
})
} else {
Model.findByIdAndUpdate(obj._id, obj, function(){
res.send({method: 'update', error: err, data: data})
})
}
Sto solo pensando che forse c'è un modo migliore per farlo.
Il problema è che "obj" contiene _id, e in caso di aggiornamento ho bisogno di rimuoverlo aggiornamento prima o ottengo "Mod su _id non ammesso" l'errore – WHITECOLOR
@WHITECOLOR Buon punto. Aggiornato il codice per rimuoverlo prima dell'aggiornamento. – JohnnyHK
c'è lo sfregamento. Voglio creato di nuovo (se non esiste) Articolo per avere _id uguale a obj._id, Se per rimuovere _id da obj prima di creare un'operazione, mongo creerà nuovo _id. – WHITECOLOR