在我的代码中,我需要缓存一些查找,例如:
MyModel.objects.get(slug='foo')
MyModel.objects.get_or_create(slug='bar', defaults={'name':'bar'})
为了避免命中DB。
我猜对这些方法应用记忆可能是一个很好的解决方案,但我没有找到正确的方法来实现这一点,
你能帮助我吗,
提前致谢
在我的代码中,我需要缓存一些查找,例如:
MyModel.objects.get(slug='foo')
MyModel.objects.get_or_create(slug='bar', defaults={'name':'bar'})
为了避免命中DB。
我猜对这些方法应用记忆可能是一个很好的解决方案,但我没有找到正确的方法来实现这一点,
你能帮助我吗,
提前致谢
这些方法为您返回对象,因此您可以立即缓存它。
from django.core.cache import cache
a = cache.get('a')
if not a:
a = MyModel.objects.get(slug='foo')
cache.set('a', a)
b = cache.get('b')
if not b:
b, exists = MyModel.objects.get_or_create(slug='bar', defaults={'name':'bar'})
cache.set('b', b)
希望我不会误解你的问题。