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

ドキュメントがすでに存在するかどうかを確認しても、Mongooseはドキュメントを保存しています

    JohnnyHKは私の誤りを指摘しました。ライブラリを使用して、非同期-彼の答えを反映するようにコードを調整しました:

    function insertFeedItems(feedItems,newFeedID){
    
    async.eachSeries(feedItems, function(item, eachCallBack) {
    
        let firstName = item.author.substr(0, item.author.indexOf(' '));
        let lastName = item.author.substr(item.author.indexOf(' ') + 1);
        async.waterfall([
                (callback) => {
                    authorController.createAuthorInternally(firstName, lastName, function(author) {
                        return callback(null, author, item.categories);
                    });
                },
                (author, categories, callback) => {
                    categoryController.createCategoryInternally(categories, function(categories) {
                        return callback(null, author, categories);
                    });
                },
                (author, categories, callback) => {
                    feedEntryController.createFeedEntry(item, author, categories, function(entry) {
                        return callback(null, author, categories, entry);
                    });
                },
            ],
            function(waterfallError) {
                if(!waterfallError){
                    eachCallBack();
                }
            });
    }, function(eachSeriesErr) {
        if(eachSeriesErr) {
            console.log('An item failed to process');
        } else {
            console.log('All items have been processed successfully');
        }
    });
    }
    



    1. _idフィールドを使用してmongodbからレコードをフェッチし、Javaを使用してフェッチしたレコードをコンソールに表示する方法

    2. Mongoでサブドキュメントを整理する最良の方法は?

    3. Mongoose/Nodejsでの遅延読み込み/その他のデータスクロール

    4. JavaでのORによる正規表現-mongoDB