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

Cập nhật Mongoose MODEL () so với save ()

Trước hết, bạn không cần gọi foundUser.save () khi đang sử dụng phương thức foundUser.update ().

Và, tất cả các phương pháp trên hầu như hiệu quả như nhau vì có hai lệnh gọi được thực hiện đến cơ sở dữ liệu. Vì vậy, nó phụ thuộc vào sở thích cá nhân của bạn.

Và, một phương thức khác chỉ với một lệnh gọi đến cơ sở dữ liệu có thể được thực thi theo cách này:-

let foundUser = await userModel.findOneAndUpdate(
 { email: recievedEmail, password: hashedPassword },
 { $set: { lastLogin: new Date() }, $push: { myEvents: authEvent } }
);

Trong phương pháp này, nếu người dùng có email và mật khẩu đã cho tồn tại, người dùng đó sẽ được cập nhật và tài liệu cập nhật tương ứng sẽ được trả lại trong foundUser Biến đổi. Vì vậy, bạn không phải thực hiện kiểm tra thêm mật khẩu:If findOneAndUpdate() trả về một tài liệu, nó có nghĩa là mật khẩu và email trùng khớp. Bạn chỉ cần kiểm tra null hoặc undefined trên tài liệu được trả về để xem có khớp nào không.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb $ tồn tại luôn trả về 0

  2. Làm cách nào để lấy bản in ra để gỡ lỗi bản đồ / thu nhỏ trong Mongoid?

  3. Lệnh Distinction () được sử dụng với bỏ qua () và giới hạn ()

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

  5. $ strLenBytes so với $ strLenCP trong MongoDB:Sự khác biệt là gì?