кэш при определенных действиях в админке через call_command('clear_cache'). Команда отрабатывает как нужно и кэш очищается из редиса, но клиент все равно получает кэшированную версию. Я не могу понять как это происходит, думал что проблема в локальном кэше, пробовал в разных браузерах и через курл, все равно приходит кэшированная версия.
А что кэшируется, фильтр по дате?
Всё
Вообще все кверисеты или только один?
Только один
Вьюха на классах?
Так точно
Тогда видимо надо показать queryset
class EventsViewSet(viewsets.ReadOnlyModelViewSet): queryset = EventPage.objects.live().public() serializer_class = EventPageSerializer pagination_class = None lookup_field = 'id' filter_backends = ( DateRangeFilter, DjangoFilterBackend, WagtailSearchFilter, ) filter_fields = ( 'show_in_menus', 'id', ) @method_decorator(staff_cache_on_auth(60*60*2)) def list(self, request, *args, **kwargs): self.serializer_class = EventPageBriefSerializer return super(EventsViewSet, self).list(self, request, *args, **kwargs) def get_queryset(self): queryset = self.queryset if self.request.user.is_staff or self.request.user.is_superuser: queryset = EventPage.objects.live() serializer_class = self.get_serializer_class() queryset = serializer_class.setup_eager_loading(queryset) return queryset
Методы кверисета live и public
Да, для обычных пользователей получаем страницы из вагтейла, которые лайв и паблик, для админов только просто лайв
Обсуждают сегодня