2017-07-05 5 views
0
User.update({_id: req.params.id}, userTemp).then(function(){ 
    User.findOne({_id: req.params.id}).then(function(user){ 
     res.send(user); 

    }); 
    }); 

このコードは実行されていますが、実際にはデータベースの値は変更されません。私は以前のユーザーを新しいユーザーに置き換えるべきですが、それはそうではありません。ご例えばdocなぜ更新しないのですか

私はむしろ、このようなfindByIdAndUpdate使用します:あなたはすでにその文書を持っているときに、ドキュメントの更新に見つけることができたよう

答えて

1

がドキュメント上で使用することができます

User.findByIdAndUpdate(req.params.id, userTemp, function(err, user) { 
    res.send(user); 
}) 
+0

乾杯を、あなたの方法はるかにクリーンです。それは何らかの理由でデータベース内のデータを変更していません。 –

+1

'err'パラメータにメッセージがありますか? –

+1

また、私は 'findOneAndUpdate'の例で間違ったメソッドを使用していることに気付きました。 'findByIdAndUpdate'でなければなりません。私は例でそれを修正しました –

関連する問題