diff --git a/tildes/tildes/models/pagination.py b/tildes/tildes/models/pagination.py index 1462519..c1353fd 100644 --- a/tildes/tildes/models/pagination.py +++ b/tildes/tildes/models/pagination.py @@ -112,7 +112,7 @@ class PaginatedQuery(ModelQuery): return self - def remove_before_after(self): + def remove_before_after(self) -> PaginatedQuery: """Remove all before or after restrictions from query""" self.before_id = None self.after_id = None @@ -237,7 +237,11 @@ class PaginatedResults: self.has_prev_page = False # fetch total number of results without pagination - self.total_count = len(query.remove_before_after().all()) + self.total_count = ( + query.request.db_session.query(func.count()) + .select_from(query.remove_before_after().statement) + .scalar() + ) def __iter__(self) -> Iterator[Any]: """Iterate over the results."""