【发布时间】:2015-08-19 02:49:27
【问题描述】:
所以我目前正在使用 Python/Django,但我遇到了一个问题,即 Django 在“会话内”缓存查询集。
如果我运行 python manage.py shell 并这样做:
>>> from myproject.services.models import *
>>> test = TestModel.objects.filter(pk = 5)
>>> print test[0].name
>>> John
现在,如果我直接在 SQL 中将它更新到 Bob 并再次运行它,它仍然会显示 John。但是,如果我 CTRL+D 退出(退出)并运行相同的操作,它将已更新并现在将打印 Bob。
我的问题是我在屏幕中运行 SOAP 服务,它总是返回相同的结果,即使数据被更改。
我需要一种方法来强制查询实际上再次从数据库中提取数据,而不仅仅是提取缓存的数据。我可以只使用原始查询,但这对我来说不是一个解决方案,有什么想法吗?
【问题讨论】:
-
您能否显示您用于更新记录并尝试获取新值的确切代码?
标签: python django caching django-queryset