1. Jury Koryakov

    16.03.2010

    0 ↑
    0 ↓
    Пытаюсь закэшировать вывод json, который закрыт дектораторами login_required и permission_required:
    @login_required
    @permission_required('auth.can_do_smth')
    @cache_page(60)
    def data(request):
    ...
    return HttpResponse(json_data, mimetype="application/json")
    И ничего не выходит. Кэш файлы не создаются.

    В settings.py:
    ...
    CACHE_BACKEND = 'file:///var/tmp/django_cache'
    CACHE_MIDDLEWARE_ANONYMOUS_ONLY = False
    ...
    Подскажите как обстоят дела с кэшированием при использовании используемых декораторов?

    Если включить в MIDDLEWARE_CLASSES Update/FetchCacheMiddleware
    ...
    MIDDLEWARE_CLASSES = (
    'django.middleware.cache.UpdateCacheMiddleware',
    'django.middleware.common.CommonMiddleware',
    ...
    'django.middleware.cache.FetchFromCacheMiddleware',
    )
    ...
    то работает, но для всего ресурса, что не очень то нужно. Хочется
    закэшировать только некоторые критичные по быстродействию вьюхи.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.