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

マングースで複数のドキュメントを更新するにはどうすればよいですか?

    現在、update()だと思います マングースではいくつかの問題があります。https://groups.google.com/forum/#%21topic/mongoose-orm/G8i9S7E8Ergand https://groups.google.com/d/topic/mongoose-orm/K5pSHT4hJ_A/discussion 。

    ただし、更新についてはドキュメントを確認してください:http://mongoosejs.com/docs/api.html(モデルの下にあります)。定義は次のとおりです。

    以前のソリューション(マングース5以降のバージョンの後に減価償却)

    Model.update = function (query, doc, options, callback) { ... }
    

    オブジェクト内でオプションを渡す必要があるため、コードは次のようになります。

    Model.update = function ({}, {cid: ''}, {multi: true}, function(err) { ... });
    

    新しいソリューション

    Model.updateMany = function (query, doc, callback) { ... }
    
    Model.updateMany = function ({}, {cid: ''}, function(err) { ... });
    

    MongooseはCIDを$setでラップしていると思います。したがって、これは、mongoシェルで同じ更新を実行することと同じではありません。これをシェルで実行すると、すべてのドキュメントが単一のcid: ''を持つドキュメントに置き換えられます。 。



    1. MongoDBで特定のフィールド値を持つドキュメントを含まない配列を持つドキュメントを検索する

    2. データベースセキュリティ101:データベースアクセス権限について

    3. スプリングブートを使用してmongodbの自動生成フィールドを作成するにはどうすればよいですか?

    4. C#MongoDB.Driver GetServerはなくなった、今何?