2016-07-28 18 views
1

Ich versuche, mehr als eine Datenbank-Eintrag in meinem MongoDB zu aktualisieren:

User.findByIdAndUpdate(req.user._id, 
    {$push: {people_seen: person_id}}, 
    {$push: {people_liked: person_id}}, 
    function(err, usr){ 
     console.log(req.user); 
     res.json({success: true}); 
}); 

jedoch nur people_seen wird gespeichert zu werden.

Antwort

5

Sie verwenden den Operator $push mehrfach. Das zweite Argument zu findByIdAndUpdate ist ein Optionsdokument. Die richtige $push ‚s Syntax:

{ $push: { <field1>: <value1>, ... } } 

und die richtige Abfrage in der Abfrage ist:

User.findByIdAndUpdate(req.user._id, 
    { $push: { people_seen: person_id, people_liked: person_id }}, 
    function(err, usr){ 
     console.log(req.user); 
     res.json({ success: true }); 
});