您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何强制Django忽略所有缓存并重新加载数据?

如何强制Django忽略所有缓存并重新加载数据?

现在,Django 1.6已在MysqL中启用自动提交,这不再是问题。flush_transaction()无论你的MysqL是处于REPEATABLE-READ认)READ-COMMITTED模式还是事务隔离模式,上面的示例现在都可以正常运行而无需编写代码

在非自动提交模式下运行的早期Django版本中发生的事情是,第一条select语句打开了一个事务。由于MysqL认模式是REPEATABLE-READ这意味着后续select语句不会读取对数据库的任何更新-因此需要flush_transaction()上面的代码来停止事务并开始新的事务。

仍然有你为什么要使用READ-COMMITTED事务隔离的原因。如果要在终端1中进行事务处理,并且想要查看来自终端2的写入,则需要使用READ-COMMITTED

flush_transaction()代码现在在Django 1.6中会产生弃用警告,因此建议你将其删除

Go 2022/1/1 18:23:08 有333人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶