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

$ chiếu trong mongoDB findOneAndUpdate ()

Vấn đề là với new: true

Đây là một ví dụ hoạt động:

Campaign.findOneAndUpdate({'isEnabled': true,  'clients.contact_status_code': 0}, {
            '$set': { 'clients.$.contact_status_code': 1 },
        },
        {
            //new: true <-- this was causing the trouble
            projection: {
                clients: {
                    '$elemMatch': {contact_status_code: 0}, // 0 because the old record gets matched
                },
            },
        },
        (err, campaign) => {
            if (err) {
                return res.send(err);
            }

            res.json(campaign);
        }
    );

Tôi giả sử, khi new: true được đặt, mongo mất ngữ cảnh phù hợp. Thật không may, cách tiếp cận này trả về bản ghi cũ, nhưng điều đó vẫn phục vụ nhu cầu của tôi để lấy _id.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Trình điều khiển Mongo C #:Hủy số hóa BsonValue

  2. MongoDB:tra cứu đường ống hiệu suất chậm so với tra cứu cơ bản

  3. Truy vấn mongo được cung cấp trực tiếp từ chuỗi truy vấn URL nguy hiểm như thế nào?

  4. Tập hợp Mongo DB với mảng đối tượng

  5. Sử dụng $ cond trong $ match trong tổng hợp mongoDB