sql >> データベース >  >> NoSQL >> MongoDB

NodeJSの値をmongo+mongooseと交換する関数

    MongoUpdateOneドキュメント から 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. MongoDBCompassを使用したJSON入力の予期しない終了

    2. MongoDBBasicDBObjectとJavaのドキュメント

    3. Mongoidを使用したバッチ挿入/更新?

    4. 古いログファイルを削除するようにmongodbを構成するにはどうすればよいですか?