Django, DRF: Как кэшировать счетчик пагинации

Я думаю, что официальный пагинатор использует @cached_property вот так, но Несмотря на то, что используется кэш, каждый раз происходит обращение к БД для получения COUNT. что может быть проблемой, если запрос COUNT выполняется медленно.

Есть ли способ кэшировать подсчеты на определенное время?

Или есть способ использовать подсчет только на первой странице?

class Paginator:
    ...
    @cached_property
    def count(self):
        """Return the total number of objects, across all pages."""
        c = getattr(self.object_list, "count", None)
        if callable(c) and not inspect.isbuiltin(c) and method_has_no_args(c):
            return c()
        return len(self.object_list)
    ...
Вернуться на верх