MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Функция за размяна на стойности в NodeJS w/ mongo+mongoose

От документация на Mongo UpdateOne UpdateOne приема 3 аргумента филтър ,актуализацията ,обратно обаждане , така че вярвам, че трябва да подадете _id от колекцията за промяна.

Update- find() връща курсор и за използване на foreach го преобразува в масив с помощта на find().toArray().then(..so on)

// @route   PATCH api/swap
// @desc    replace date
// @access  Public

router.put("/swap", (req, res) => {
const firstDate = req.body.firstDate;
const secondDate = req.body.secondDate;

console.log(firstDate, secondDate);

Card.find().toArray().then(cards=>cards.forEach(card => {
    if (card.date === firstDate) {
      return card.updateOne( { date: firstDate } ,{ $set: { date: secondDate } });
    } else if (card.date === secondDate) {
      return card.updateOne( { date: secondDate },{ $set: { date: firstDate } });
    } else {
      return card;
    }
  });
}))
.then(() => console.log("working"));
 });



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Използване на execPopulate()

  2. как да кача изображението в папка с помощта на nodejs и да запазя пътя в mongodb?

  3. Добавяне на документ и/или добавяне на поддокумент

  4. Конвертирайте .NET Guid в MongoDB ObjectID

  5. Документ Прочетете и вмъкнете със заключване/транзакция в nodejs с mongodb