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

DeprecationWarning:collection.findAndModify không được dùng nữa. Sử dụng findOneAndUpdate, findOneAndReplace hoặc findOneAndDelete thay thế?

Bạn cần đặt tùy chọn trong truy vấn useFindAndModify thành false , như đã đề cập trong tài liệu.

(từ khóa tìm kiếm Các tùy chọn hiện được hỗ trợ là )

'useFindAndModify':đúng theo mặc định. Đặt thành false thành makefindOneAndUpdate () và findOneAndRemove () sử dụng nativefindOneAndUpdate () thay vì findAndModify ().

và nếu bạn thấy tệp định nghĩa của mongoose, nơi đã đề cập rằng nó gọi lệnh cập nhật findAndModify.

 /**
  * Issues a mongodb findAndModify update command.
  * Finds a matching document, updates it according to the update arg, 
    passing any options,
  * and returns the found document (if any) to the callback. The query 
    executes immediately
  * if callback is passed else a Query object is returned.
  */
 findOneAndUpdate(): DocumentQuery<T | null, T>;

Đã cập nhật gần đây trong tài liệu mongoose (Nhấp vào đây) cho những trường hợp không dùng nữa, nơi đã đề cập:

Lâu dài findOneAndUpdate () của Mongoose đặt trước hàm MongoDB driverfindOneAndUpdate (), vì vậy nó sử dụng hàm MongoDB driverfindAndModify () để thay thế.

Có ba cách trở lên mà bạn có thể tránh sử dụng FindAndModify :

  1. Ở cấp độ Toàn cầu:Đặt tùy chọn thành false.
// Make Mongoose use `findOneAndUpdate()`. Note that this option is `true`
// by default, you need to set it to false.
mongoose.set('useFindAndModify', false);
  1. Ở cấp độ kết nối:chúng tôi có thể định cấu hình bằng các tùy chọn kết nối:
    mongoose.connect(uri, { useFindAndModify: false });
  1. Ở cấp độ Truy vấn:
   await ModelName.findOneAndUpdate({matchQuery},
   {$set: updateData}, {useFindAndModify: false});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sự khác biệt giữa count () và find (). Count () trong MongoDB

  2. Cách lập trình phân tách trước một khóa phân đoạn dựa trên GUID với MongoDB

  3. Chuyển đổi BSON Type ObjectId sang JSON (Lưu trữ trong Mongodb) -Java

  4. MongoDB tổng hợp trong nhóm hàng ngày

  5. Cách tối ưu hóa Truy vấn trong MongoDB bằng cách sử dụng $ in so với $ hoặc