django中时间到了时清除缓存

时间:2016-12-22 09:57:50

标签: python django caching

我有问题,有缓存。我希望在时间到来时始终清除缓存。 以下是django 1.8中我的模型的一部分,但是应用程序没有使用我的方法clear_cache_when_times_up

当时间到了,类模型是清除缓存的好地方吗? 我想清除列表和详细页面上的缓存,因为我有时间使用。

class Article(BaseModel):
    title = models.CharField(max_length=255)
    short_text = models.TextField(max_length=10000, default='')
    livestream_url = models.URLField(default='', blank=True, null=True)
    livestream_from = models.DateTimeField('livestream from', blank=True, null=True)
    livestream_to = models.DateTimeField('livestream to', blank=True, null=True)

    def has_livestream(self):
        if self.livestream_from is None and self.livestream_to is None:
            return False
        return (self.livestream_from <= timezone.now()) and (self.livestream_to >= timezone.now())

    def clear_cache_when_times_up(self):
        if self.has_livestream():
            print('################## test #################')
            return cache.clear()

0 个答案:

没有答案