Django Cache - обновление при изменении модели - PullRequest
0 голосов
/ 14 апреля 2020

Кажется, я не могу найти никакого учебного пособия о том, как это сделать.

Итак, я в основном хочу добавить кеширование в мой Django проект. Я сделал просмотр блога, который должен кэшироваться и обновляться только в том случае, если модель изменилась с момента последнего кэширования.

Как мне это сделать?

1 Ответ

1 голос
/ 14 апреля 2020

Вы можете очистить кэш после создания или обновления объекта, используя сигнал сигнал после сохранения

from django.db.models.signals import post_save
from django.dispatch import receiver

class Entry(models.Model):
    content = models.TextField()

# method for updating after entry save data
@receiver(post_save, sender=Entry)
def clear_cache(sender, instance, **kwargs):
    # call cache clear here

Другая альтернатива - перегрузить метод сохранения модели и после его сохранения звонки на очистка кеша

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...