跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • django 使用 orm 修改某个数据库字段值时, save()后大约过了三分钟,这个字段的值又回到了修改之前的值. 不是每次都必现的
未分類
6 5 月 2020

django 使用 orm 修改某个数据库字段值时, save()后大约过了三分钟,这个字段的值又回到了修改之前的值. 不是每次都必现的

django 使用 orm 修改某个数据库字段值时, save()后大约过了三分钟,这个字段的值又回到了修改之前的值. 不是每次都必现的

資深大佬 : kadycui 1

save()之后代码没有报错,数据库字段已经更改成功,之后 3-5 分钟字段又恢复到原来的状态. 这段代码是每天都执行的自动脚本的一小部分 这个字段每天都会被更改

                if ser_list:                     for s in ser_list:                         create_time = s.create_time                         dt = now - create_time                         if dt.days == 0 and dt.seconds / 60 > 0 and dt.seconds / 60 < 3:                             s.status = 4                             s.commend = 1                             s.last_time = datetime.datetime.now()                             s.save() 

业务环境(django 1.6+python2.6+mysql5.6 ),祖传项目项目,有点老

大佬有話說 (9)

  • 資深大佬 : 37Y37

    可能数据问题,也可能是有别的脚本改了数据

  • 資深大佬 : encro

    log

  • 資深大佬 : ipwx

    可能是别的什么地方读出来了又写回去了。好像 Django 的 .save() 是把所有字段重新存一遍,而不是只更新 dirty fields 。

  • 資深大佬 : cominghome

    找 audit 或者 bin log,看你的描述不觉得是 orm 的问题

  • 資深大佬 : wzwwzw

    save 是把整个对象都重新存一遍,所以检查下 log 是不是有别的地方也更新过。

  • 資深大佬 : chaohuang

    用 update 吧

  • 主 資深大佬 : kadycui

    @ipwx 现在排查出来有一个地方也有 save()操作

  • 主 資深大佬 : kadycui

    @wzwwzw 是还有一个地方也存在 save(),现在测试下数据

  • 資深大佬 : codeli

    查日志

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具