MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

mongoose cập nhật một trường trong MongoDB không hoạt động

Có vẻ như bạn đang làm một số việc không chuẩn:

  • Sử dụng findOne thay vì find nếu bạn chỉ muốn tải một người dùng
  • Đang gọi Model.update nên được thực hiện để cập nhật các bản ghi mà bạn chưa tải
  • $inc đang thêm oldPoints, vì vậy giá trị mới sẽ là 2 * oldPoints + newPoints
  • Bạn đang sử dụng name dưới dạng truy vấn có điều kiện thay vì Username

Tôi sẽ viết lại mã thành một cái gì đó như thế này:

User.findOne({Username: name}, function(err, user){
  if (err) { return next(err); }
  user.Points += points;
  user.save(function(err) {
    if (err) { return next(err); }
  });
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sự khác biệt giữa lưu trữ một ObjectId và dạng chuỗi của nó, trong MongoDB

  2. Lỗi tham chiếu không được đưa ra từ lệnh gọi lại MongoDB

  3. Không kết nối được với máy chủ mongodb từ xa

  4. Hướng dẫn:Người dùng có người hâm mộ

  5. Cách sao chép cơ sở dữ liệu Mongodb với Mongoose