Skip to content

Commit 01faae6

Browse files
committed
feat: progress
1 parent 4df3fb6 commit 01faae6

File tree

2 files changed

+42
-2
lines changed

2 files changed

+42
-2
lines changed

django_wtf/core/search_view.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator
12
from watson import search as watson
23
from watson.views import SearchView as OriginalSearchView
34

@@ -6,7 +7,7 @@
67

78

89
class SearchView(OriginalSearchView):
9-
paginate_by = 20
10+
paginate_by = 10
1011
models = (Repository,)
1112

1213
def get_template_names(self): # pyright: ignore [reportIncompatibleMethodOverride]

django_wtf/templates/core/search_table.html

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{% load admin_urls static %}
22

33
{% if object_list %}
4-
{% for object in object_list %}
4+
{% for object in page_obj %}
55
<div class="my-4 rounded">
66
<div class="shadow-xl card bg-base-200">
77
<div class="pb-2 card-body">
@@ -23,4 +23,43 @@ <h2 class="flex justify-between card-title">
2323
</div>
2424
</div>
2525
{% endfor %}
26+
<div class="join">
27+
{% if page_obj.has_previous %}
28+
<button class="join-item btn btn-neutral"
29+
hx-trigger="click"
30+
hx-include="[name='q'],[name='category']"
31+
hx-get="{% url 'core:search' %}{% if page_obj.previous_page_number != 1 %}?page={{ page_obj.previous_page_number }}{% endif %}"
32+
hx-push-url="true"
33+
hx-target="#search_table">
34+
<<
35+
</button>
36+
<button class="join-item btn btn-neutral"
37+
hx-trigger="click"
38+
hx-include="[name='q'],[name='category']"
39+
hx-get="{% url 'core:search' %}?page=1"
40+
hx-push-url="true"
41+
hx-target="#search_table">1</button>
42+
{% endif %}
43+
<button class="join-item btn btn-neutral"
44+
hx-trigger="click"
45+
hx-include="[name='q'],[name='category']"
46+
hx-get="{% url 'core:search' %}{% if page_obj.previous_page_number != 1 %}?page={{ page_obj.previous_page_number }}{% endif %}"
47+
hx-push-url="true"
48+
hx-target="#search_table">{{ page_obj.previous_page_number }} ad</button>
49+
<button class="join-item btn btn-neutral btn-active">{{ page_obj.number }}</button>
50+
<button class="join-item btn btn-neutral"
51+
hx-trigger="click"
52+
hx-include="[name='q'],[name='category']"
53+
hx-get="{% url 'core:search' %}?page={{ page_obj.next_page_number }}"
54+
hx-push-url="true"
55+
hx-target="#search_table">{{ page_obj.next_page_number }}</button>
56+
{% if page_obj.has_next %}
57+
<button class="join-item btn btn-neutral"
58+
hx-trigger="click"
59+
hx-include="[name='q'],[name='category']"
60+
hx-get="{% url 'core:search' %}?page={{ page_obj.next_page_number }}"
61+
hx-push-url="true"
62+
hx-target="#search_table">>></button>
63+
{% endif %}
64+
</div>
2665
{% endif %}

0 commit comments

Comments
 (0)