Как очистить кэш в Django

  • Опубликовано:
  • Теги: django

На локальном сервере разработки установил memcached для работы с Django. Все бы хорошо, да при отладке приходится чистить кэш, и чтобы сбросить его, нужно было лезть в шелл  (если есть способ делать это проще, поделитесь, плиз)

В итоге сделал команду для ./manage.py. Создаем приложение utils, добавляем папки и файлы внутрь него в следующем порядке:

utils
├── __init__.py
└── management
    ├── __init__.py
    └── commands
        ├── __init__.py
        └── clearcache.py
В файл clearcache.py вставляем код:
from django.core.management.base import BaseCommand
from django.core.cache import cache

class Command(BaseCommand):
    def handle(self, *args, **kwargs):
        cache.clear()
        self.stdout.write('Cleared cache\n')
Теперь сбрасывать кэш можно из командной строки ./manage.py clearcache Интересно, что ключи при этом все равно остаются в кэше, хотя содержимое очищается. Но если сделать запрос в кэш по этим ключам, тогда и ключи тоже удалятся.