Node.js使用orm2进行update操作时关联字段无法修改的解决方法


Posted in Javascript onJune 13, 2017

前言

最近在工作中遇到一个问题,在使用Orm2进行model修改时,发现当对关联字段进行update操作时,执行了2次SQL,第一次把值改为了我们期望的值,第二次又会把值改回成原来的值。

经过调查,当autoFetch开启时,会自动取得关联model,此时的model为:

{
roomId: xxx, // 关联的roomId
room: {
// 关联的room对象
}
}

第一次会按照roomId去修改,第二次则会按照fetch的关联对象room进行修改,导致了我们看到的执行了两次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 });
});

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
jquery 选择器引擎sizzle浅析
Feb 06 Javascript
JavaScript实现的日期控件具体代码
Nov 18 Javascript
javascript在IE下trim函数无法使用的解决方法
Sep 12 Javascript
深入分析Javascript跨域问题
Apr 17 Javascript
JavaScript制作简易计算器(不用eval)
Feb 05 Javascript
jquery在vue脚手架中的使用方式示例
Aug 29 jQuery
微信小程序下拉刷新界面的实现
Sep 28 Javascript
jquery实现侧边栏左右伸缩效果的示例
Dec 19 jQuery
Vue 一键清空表单的实现方法
Feb 07 Javascript
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
Mar 10 Javascript
前端性能优化建议
Sep 17 Javascript
vue实现图片裁剪后上传
Dec 16 Vue.js
bootstrap timepicker在angular中取值并转化为时间戳
Jun 13 #Javascript
微信小程序实现多个按钮toggle功能的实例
Jun 13 #Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
Jun 13 #Javascript
微信小程序--组件(swiper)详细介绍
Jun 13 #Javascript
Vue.js实现微信过渡动画左右切换效果
Jun 13 #Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 #Javascript
基于pako.js实现gzip的压缩和解压功能示例
Jun 13 #Javascript
You might like
一个php作的文本留言本的例子(三)
2006/10/09 PHP
也谈php网站在线人数统计
2008/04/09 PHP
linux php mysql数据库备份实现代码
2009/03/10 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
PHP简单装饰器模式实现与用法示例
2017/06/22 PHP
js判断变量是否未定义的代码
2020/03/28 Javascript
js实现的点击div区域外隐藏div区域
2014/06/30 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
2016/03/21 Javascript
基于js里调用函数时,函数名带括号和不带括号的区别
2016/07/28 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
2016/10/11 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
JS碰撞运动实现方法详解
2016/12/15 Javascript
jQuery多选框选择数量限制方法
2017/02/08 Javascript
js学习总结之dom2级事件基础知识详解
2017/07/27 Javascript
利用yarn代替npm管理前端项目模块依赖的方法详解
2017/09/04 Javascript
ES6中Array.includes()函数的用法
2017/09/20 Javascript
微信小程序webview实现长按点击识别二维码功能示例
2019/01/24 Javascript
微信小程序基础教程之worker线程的使用方法
2019/07/15 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
2019/09/10 jQuery
Nuxt配置Element-UI按需引入的操作方法
2020/07/06 Javascript
Python实现中文数字转换为阿拉伯数字的方法示例
2017/05/26 Python
基于python爬虫数据处理(详解)
2017/06/10 Python
Python单元测试实例详解
2018/05/25 Python
django 外键model的互相读取方法
2018/12/15 Python
Django高级编程之自定义Field实现多语言
2019/07/02 Python
python gdal安装与简单使用
2019/08/01 Python
python安装本地whl的实例步骤
2019/10/12 Python
Python数据分析pandas模块用法实例详解
2019/11/20 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
htnl5利用svg页面高斯模糊的方法
2018/07/20 HTML / CSS
泰国网上购物:Shopee泰国
2018/09/14 全球购物
应届生人事助理求职信
2013/11/09 职场文书
班主任工作经验交流材料
2014/05/13 职场文书
经济国贸专业求职信
2014/06/18 职场文书
2014年学生工作总结
2014/11/20 职场文书
Elasticsearch 索引操作和增删改查
2022/04/19 Python