Не работает фильтрация по текущему времени
Необходимо отображать новости, срок публикации которых уже наступил, а остальные скрывать до наступления времени публикации. Для этого в контроллере использую данную фильтрацию:
view.py
from django.utils import timezone
class NewsViewSet(GenericViewSet, mixins.ListModelMixin):
serializer_class = NewsSerializer
queryset = (
News.objects.all()
.filter(publicated_at__lt=timezone.now())
.order_by("-publicated_at", "-created_at")
)
permission_classes = [ModerateAndAdminCreateUpdateDeleteOrAuthReadOnly]
search_fields = ["created_at", "title"]
filter_backends = [filters.SearchFilter]
filterset_class = NewsDateFilter
settings.py
LANGUAGE_CODE = "ru-RU"
TIME_ZONE = "Europe/Moscow"
USE_I18N = True
USE_L10N = True
USE_TZ = False
Время привел в соответствие согласно часовым поясам(соответствует при выводе, в БД и в timezone.now()), но все-равно часть записей не выводится после наступления даты публикации. При этом после перезапуска приложения эти записи выводятся в список.
Такое ощущение, что значение timezone.now() не присваивается динамически, а становится фиксированным и равняется времени запуска приложения.