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

Làm cách nào để chọn một subocument mongo theo id với mongoose?

Theo cuộc thảo luận của chúng tôi, chúng tôi đã tìm ra nguyên nhân gốc rễ bởi

db.locations.update({ name: 'Starcups' }, 
                    { $push: { 
                         reviews: { 
                            author: 'Simon Holmes', 
                            id: ObjectId(), // issue is here
                            rating: 5, ... } } })

id: ObjectId() sẽ tạo id trong tài liệu con và không có _id trong reviews tài liệu phụ.

id() phương thức được sử dụng để documentArrays có id đặc biệt phương pháp tra cứu tài liệu theo _id của nó . Vì không có _id trường trong reviews mảng tài liệu, nó không hoạt động tốt.

Vui lòng xóa id: ObjectId() từ mã của bạn.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Ưu và nhược điểm của DynamoDB so với các cơ sở dữ liệu NoSQL khác là gì?

  2. Phân tích các truy vấn chậm trong MongoDB

  3. Trường $ name phải là một đối tượng tích lũy

  4. DBRefs (tham chiếu Tài liệu Mongo) không được tìm nạp một cách háo hức

  5. Làm cách nào chúng ta có thể tạo trường được tạo Tự động cho mongodb bằng cách sử dụng khởi động mùa xuân