あなたはいくつかの非標準的なことをしているようです:
-
findOne
を使用するfind
の代わりに 1人のユーザーだけをロードしたい場合 -
Model.update
を呼び出す ロードしていないレコードを更新するために実行する必要があります -
$inc
はoldPointsを追加しているため、新しい値は2 * oldPoints + newPoints
になります。 -
name
を使用していますUsername
の代わりに条件付きクエリとして
コードを次のように書き直します:
User.findOne({Username: name}, function(err, user){
if (err) { return next(err); }
user.Points += points;
user.save(function(err) {
if (err) { return next(err); }
});
});