Tôi tương đối mới với Node.js và Mongo/Mongoose và tôi đang gặp rất khắc phục sự cố khó khăn trong thời gian khó khăn cụ thể Mongoose:Lỗi "VersionError: Không tìm thấy tài liệu phù hợp" trên Node.js/Mongoose
Phiên bảnError: Không tìm thấy tài liệu phù hợp.
(Entire lỗi dấu vết/ngăn xếp ở dưới cùng của câu hỏi này.)
bài viết trên blog này khá phác thảo rõ ràng làm thế nào một VersionError có thể xảy ra:
(TL; DR - "Mongoose v3 bây giờ thêm khóa phiên bản có thể định cấu hình lược đồ cho từng tài liệu. Giá trị này được tăng lên theo nguyên tắc ver một sửa đổi cho một mảng có khả năng thay đổi bất kỳ vị trí các phần tử của mảng. "Nếu bạn cố gắng lưu một tài liệu, nhưng khóa phiên bản không còn phù hợp với đối tượng bạn đã lấy, bạn có được ở trên VersionError
.)
: Có cách nào để hiển thị hoạt động vi phạm save()
không? Hoặc tài liệu nào không thể lưu? Hoặc bất cứ điều gì ở tất cả ?! ;)
Thách thức: đây là một cơ sở mã tương đối lớn với nhiều mảng và tôi không chắc chắn cách bắt đầu khắc phục sự cố. Đặc biệt, dấu vết lỗi/ngăn xếp dường như không hiển thị nơi mà vấn đề tồn tại. Xem bên dưới:
VersionError: No matching document found.
at handleSave (<project_path>/node_modules/mongoose/lib/model.js:121:23)
at exports.tick (<project_path>/node_modules/mongoose/lib/utils.js:408:16)
at null.<anonymous> (<project_path>/node_modules/mongoose/node_modules/mongodb/lib/mongodb/collection.js:484:9)
at g (events.js:192:14)
at EventEmitter.emit (events.js:126:20)
at Server.Base._callHandler (<project_path>/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/base.js:391:25)
at Server.connect.connectionPool.on.server._serverState (<project_path>/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:558:20)
at MongoReply.parseBody (<project_path>/node_modules/mongoose/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:131:5)
at Server.connect.connectionPool.on.server._serverState (<project_path>/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:517:22)
at EventEmitter.emit (events.js:96:17)
lẽ bật gỡ lỗi ([tài liệu] (http://mongoosejs.com/docs/api.html#index_Mongoose-set)) có thể giúp bạn theo dõi vấn đề này. Gần đây tôi đã có cùng một vấn đề, hóa ra là tôi đã lưu cùng một cá thể tài liệu hai lần, đồng thời. – robertklep