Node.js使用orm2進行update操作時關聯(lián)字段無法修改的解決方法
前言
最近在工作中遇到一個問題,在使用Orm2進行model修改時,發(fā)現(xiàn)當對關聯(lián)字段進行update操作時,執(zhí)行了2次SQL,第一次把值改為了我們期望的值,第二次又會把值改回成原來的值。
經(jīng)過調(diào)查,當autoFetch開啟時,會自動取得關聯(lián)model,此時的model為:
{
roomId: xxx, // 關聯(lián)的roomId
room: {
// 關聯(lián)的room對象
}
}
第一次會按照roomId去修改,第二次則會按照fetch的關聯(lián)對象room進行修改,導致了我們看到的執(zhí)行了兩次SQL的情況。
解決方法
在save操作前將fetch的對象刪除即可。
for (var j in originEntity) {
if (_.isObject(originEntity[j])) {
delete originEntity[j];
}
}
originEntity.save(function(err) {
if (err) {
return res.json({ errMsg: err[0].msg });
}
return res.json({ code: 200, data: originEntity });
});
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
詳解vue-cli 3.0 build包太大導致首屏過長的解決方案
這篇文章主要介紹了詳解vue-cli 3.0 build包太大導致首屏過長的解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
vue $attrs和$listeners的使用與區(qū)別
本文主要介紹了vue $attrs和$listeners的使用與區(qū)別,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
vue中el-table兩個表尾合計行聯(lián)動同步滾動條實例代碼
項目開發(fā)中遇到一個比較兩個form差異的需求,但當item過多就需要滾動條,下面這篇文章主要給大家介紹了關于vue中el-table兩個表尾合計行聯(lián)動同步滾動條的相關資料,需要的朋友可以參考下2022-05-05
Vue重要修飾符.sync對比v-model的區(qū)別及使用詳解
這篇文章主要為大家介紹了Vue中重要修飾符.sync與v-model的區(qū)別對比及使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-07-07

