0
Ich habe zwei Sammlungen Order und TabItems. Ich bekomme Array von Order-IDs und ich muss diese IDs Schleife und überprüfen, ob Datensatz in TabItem vorhanden ist. Wenn der Datensatz vorhanden ist, aktualisieren Sie das TabItem, andernfalls erstellen Sie ein neues TabItem. Unten ist mein Code:Aktualisierung oder neue Sammlung im Knoten js
async.each(orders, function(order, done){
TabItem.findOne({order_id: order._id}, function(err, tab){
if(err) { console.log(err)}
if(tab != null) {
tab.quantity += order.quantity
tab.save(function(err){
if(err) { throw err }
done(true)
})
}
else {
TabItem.create({order_id: data._id, menu_item_id: each_tab.menu_item_id, quantity: each_tab.quantity}, function(err, tab_item){
if(err){
}
})
}
})
done();
})
Server hängt, wenn ich versuche, diese Methode aufzurufen. Kann mir da jemand helfen?
Danke für Hilfe. Was ist mit dem Erstellen, wenn der Datensatz nicht vorhanden ist? – Sunny
siehe '{upsert: true}'. Wenn der Datensatz mit den angegebenen Feldern nicht existiert, würde er selbst den Datensatz einfügen. –