Попробуйте так:
from django.views import generic
class catalog(LoginRequiredMixin, generic .ListView):
paginate_by = 2
в catalog.html:
{% block pagination %}
{% if is_paginated %}
<div class="pagination">
<span class="page-links">
{% if page_obj.has_previous %}
<a href="{{ request.path }}?page={{ page_obj.previous_page_number }}">Назад</a>
{% endif %}
<span class="page-current">
страница {{ page_obj.number }} из {{ page_obj.paginator.num_pages }}.
</span>
{% if page_obj.has_next %}
<a href="{{ request.path }}?page={{ page_obj.next_page_number }}">Вперед</a>
{% endif %}
</span>
</div>
{% endif %}
{% endblock %}