Я использую django's Memcached и механизм кэширования для просмотра с помощью декоратора @cache_page(timeout)
.Явное очищение flash/cache() или django memcached или удаление определенного ключа для каждого вида кэша
Внутри определенной функции просмотра Я хочу очистить весь кеш. Я пробовал cache.clear()
и cache._cache.flush_all()
, но, похоже, не скрывает кеш.
Есть ли другой способ сделать это, или я делаю это неправильно?
EDIT: Я понимаю, что полностью очистка кеша - не такая хорошая идея, как просто удаление необходимых ключей. Тем не менее, я не знаю ключей для просмотров, которые я украсил с помощью @cache_page (timeout). Как мне узнать их? И после того, как я приобрел ключ, я просто делаю cache.delete (key)?
Спасибо!
В действительности нет веской причины, чтобы очистить * весь кеш. Просто удалите ключи, которые хотите обновить, и не смешивайте их с остальной частью. –
Я не знаю ключей для просмотров, которые я украсил с помощью @cache_page (тайм-аут) Как мне их узнать? И после того, как я приобрел ключ, я просто делаю cache.delete (key)? – keithxm23
Проверьте этот связанный вопрос SO: http://stackoverflow.com/questions/2268417/expire-a-view-cache-in-django –