{% if page_obj.has_previous %}
{% endif %}
{% for num in page_obj.paginator.page_range %}
{% if num == page_obj.number %}
{{ num }}
{% elif num >= page_obj.number|add:"-2" and num <= page_obj.number|add:"2" %}
{{ num }}
{% elif num == 1 or num == page_obj.paginator.num_pages %}
{{ num }}
{% elif num == page_obj.number|add:"-3" or num == page_obj.number|add:"3" %}
…
{% endif %}
{% endfor %}
{% if page_obj.has_next %}
{% endif %}