在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ Nodejs根據(jù)父親表的數(shù)據(jù)來更新子表中的數(shù)據(jù)

Nodejs根據(jù)父親表的數(shù)據(jù)來更新子表中的數(shù)據(jù)

MongoDb中現(xiàn)在有個兩張表,一張表parent,另外一張表child,child表中通過parent_id字段來與parent表進(jìn)行關(guān)聯(lián)

parent表中的字段為_id,name,title,author

child表中的字段哪位_id,content,misc,parent_id(parent_id即為parent表中的_id)

需求:

把所有child表中的數(shù)據(jù),字段為misc的值改為parent表中的name值,如何實(shí)現(xiàn)? 同步的代碼思路沒有問題,但是mongoose查詢的返回是異步的,如何來處理呢?

回答
編輯回答
我不懂

類似下面這樣吧,代碼可能有點(diǎn)小問題,僅供參考,其實(shí)就是 async/await 控制下異步流程

(async () => {
    try {
        let childs = await ChildModel.find().exec();
        for (let i = 0; i < childs.length; i++) {
            let newMisc = await ChildModel.findOne({ _id: childs[i].parent_id }, 'name').exec();
            await ChildModel.findOneAndUpdate({_id: childs[i]._id}, { $set:{ misc: newMisc }})
        }
    } catch (error) {
        console.log(error);
    }
})()
2017年4月25日 22:54