2013-03-01 148 views
2

我有2个django应用程序的实例。 一个是前端 - 一个正常的wsgi应用程序。 另一个是后端 - 一个以./manage.py rundaemon运行的扭曲守护进程。 他们分享django settigns和模型。django刷新查询缓存

现在,当其中一个人有一个查询,它被缓存。 当另一个更新数据库时 - 缓存不会被刷新。 这很明显是因为他们不知道另一个实例访问同一个数据库。

是否有办法禁用缓存或手动刷新并强制查询重新执行?

(我猜的管理应用程序不会刷新查询缓存以某种方式)

+2

您应该尝试手动提交事务。看到类似的问题:http://stackoverflow.com/questions/3346124/how-do-i-force-django-to-ignore-any-caches-and-reload-data和http://stackoverflow.com/questions/ 1886909 /如何对禁用,Django的查询缓存。希望有所帮助。 – alecxe 2013-03-01 04:26:42

回答

1

我不知道这是否是最好的解决办法,但它的工作对我来说,当我面临同样的问题。

import django 
django.db.connection.close() 

连接将在下次需要时自动重新打开。