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

Mã api của tôi lấy một mảng dữ liệu trống từ mongodb trong khi mã hoạt động tốt trên mongodb sân chơi

Hóa ra việc đúc ObjectId dường như là một vấn đề. Chúng ta cần sử dụng mongoose.Types.ObjectId

Mã API sẽ giống như thế này

getProductByProductId: function (productId) {
return new Promise((resolve, reject) => {
  User.aggregate([
  {
  $match: {
    "shops.products._id": mongoose.Types.ObjectId(productId)
  }
  },
  {
    "$unwind": "$shops"
  },
  {
    "$unwind": "$shops.products"
  },
  {
    $match: {
    "shops.products._id": mongoose.Types.ObjectId(productId)
  }
  },
  {
  $project: {
  "_id": "$shops.products._id",
  "title": "$shops.products.title"
  }
}
])
.then(products => {
resolve(products)
}).catch(err => {
reject(err);
});
});
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bao gồm các trường cụ thể trong chỉ mục ký tự đại diện trong MongoDB

  2. MongoDB dưới dạng Cơ sở dữ liệu chuỗi thời gian

  3. Cách xử lý ngày thấp hơn năm 1970 trong MongoDB

  4. Bản đồ-Giảm hiệu suất trong MongoDb 2.2, 2.4 và 2.6

  5. danh sách thanh lịch của các mục con lặp lại