MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak zaprojektować zaktualizowane wartości tylko za pomocą findOneAndUpdate we wbudowanej tablicy Mongoose?

możesz użyć array.find() tak:

const updatebookSource = (sourceId, userId, bookId) => {
  User.findOneAndUpdate({ _id: userId, "books._id": bookId }, up, filter).exec(
    (err, doc) => {
      if (err) throw err;
      let res = doc.books[0].ratings.find(rating => {
        return rating.source === sourceId;
      });

      console.log(JSON.stringify(res, null, 1));
    }
  );
};

Zwraca zaktualizowany obiekt. Daj mi znać, czy to działa.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wywołanie procedury składowanej przez PHP w MongoDB

  2. Jeśli wartość właściwości jest pusta podczas aktualizacji, wówczas ta właściwość nie powinna być dodawana do rekordu

  3. Czy można zmienić domyślną strefę czasową w MongoDB za pomocą Rails 3?

  4. Regex, aby dopasować słowa w zdaniu według jego prefiksu

  5. Wydajne mapowanie POJO do/z Java Mongo DBObject przy użyciu Jackson