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

Promiseを使用して複数のmongodbコレクションを保存するにはどうすればよいですか?

    Promise.allを使用します save内 機能すれば、期待どおりに使用できます

    function save(){
        var promises = [
            new Promise(function(resolve, reject) {
                Collection1.collection.insert(collections1, function(err, done){
                     if(err)
                         reject(err);
                     else
                         resolve(done);
                });
            }),
            new Promise(function(resolve, reject) {
                Collection2.collection.insert(collections2, function(err, done){
                     if(err)
                         reject(err);
                     else
                         resolve(done);
                });
            }),
            new Promise(function(resolve, reject) {
                Collection3.collection.insert(collections3, function(err, done){
                     if(err)
                         reject(err);
                     else
                         resolve(done);
                });
            })
        ];
        return Promise.all(promises);
    }
    
    save().then(function(){
       console.log('success');
    }).catch(function(){
       console.log('error');
    })
    



    1. 配列の最初の項目で一致するようにMongoDBにクエリを実行します

    2. 時間なしでのみ日付を比較するMongoDB

    3. 複数のフィールドとmongodbのwhere条件で区別されます

    4. 同じドキュメントMongoDB内のある配列から別の配列に要素を移動する