Mam żądanie, który zawiera dane i _idMongoose.js: jak zaimplementować tworzenie lub aktualizację?
Jaki jest lepszy sposób na wdrożenie kodu, który będzie aktualizowany, jeśli rekord z _id istnieje i utworzy go, czy nie ma nikogo? Mój kod:
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})
})
}
Po prostu myślę, że może jest lepszy sposób na zrobienie tego.
Problemem jest to, że „obj” zawiera _id, aw przypadku aktualizacji muszę go usunąć poprzednią aktualizację lub uzyskać „Mod na _id niedozwolone” Błąd – WHITECOLOR
@WHITECOLOR Dobry punkt. Zaktualizowano kod, aby usunąć ten błąd przed aktualizacją. – JohnnyHK
jest pocieranie. Chcę, aby nowo utworzony (jeśli nie istnieje) Element miał _id równy obj._id, Jeśli chcesz usunąć _id z obj przed rozpoczęciem operacji, mongo utworzy nowy _id. – WHITECOLOR