Django - 缓存查询结果模型方法

时间:2015-05-19 14:52:53

标签: django django-models django-orm

假设这个(简化的)设置:

class Related(models.Model):
    # ... fields

class Model(models.Model):
    # ... fields
    related_model = models.ForeignKey(Related)

    def a_method(self):
        # ... some instructions
        rel = self.related_set.all()
        # ... some other instructions

现在假设a_method在多个地方的模板中使用。我知道我可以使用“with”标签来缓存模板中的结果(和相关查询),但有什么方法可以将它缓存在方法本身中?

我正在考虑使用计算的查询集来设置对象的属性,然后在a_method中检查查询集是否缓存在那里,但也许有更优雅的方式。

感谢。

0 个答案:

没有答案