javascript - Django分页表后所有页面的搜索框
问题描述
我使用 Django 开发了一个网络应用程序。
我创建了一个表格分页。如何为表的所有页面中的所有数据创建搜索输入?
视图.py
def Browse_and_adopt(request):
Title_list = Title.objects.all()
page = request.GET.get('page', 1)
paginator = Paginator(Title_list, 10)
try:
Titles = paginator.page(page)
except PageNotAnInteger:
Titles = paginator.page(1)
except EmptyPage:
Titles = paginator.page(paginator.num_pages)
page_obj = paginator.get_page(page)
return render(request, 'bms/inbox/Browse_and_adopt.html', {'Titles': Titles, 'page_obj': page_obj})
Browse_and_adopt.html
<table id="myTable">
<thead>
<tr>
<th>Title</th>
</tr>
</thead>
<tbody>
% for book in page_obj %}
<tr>
<td>{{ book.title }}</td>
</tr>
{% endfor %}
</tbody>
</table>
<div class="pagination">
<span class="step-links">
{% if page_obj.has_previous %}
<a href="?page=1">« first</a>
<a href="?page={{ page_obj.previous_page_number }}">previous</a>
{% endif %}
<span class="current">
Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}.
</span>
{% if page_obj.has_next %}
<a href="?page={{ page_obj.next_page_number }}">next</a>
<a href="?page={{ page_obj.paginator.num_pages }}">last »</a>
{% endif %}
</span>
</div>
现在只显示第一页,如何为表中的所有数据创建搜索栏?
解决方案
视图不知道您要查找的对象。
有两种方法可以做到这一点。
在前端编写一个过滤所有提供的表数据的 JS 回调事件侦听器。“不是最优的”
或者您可以创建一个自定义视图,通过 post 请求接收对象 pk 并返回过滤结果,例如 url:
urlpatterns = [
path('update/<int:pk>/', updateViewSet.as_view()),
]
推荐阅读
- reactjs - 我正在尝试在反应中使用镭
- python - InvalidArgumentError:不兼容的形状:[10,2856,2856] 与 [10,2856]
- python - 将字母与 Jython 列表中的相应数字匹配
- python - 在同一行使用 line.replace 两次
- sql-server - debezium sqlserver 连接器输出数字/十进制字段的编码值
- laravel - 从数组中删除空子数组
- reactjs - 我在使用引导程序时遇到问题
- android - 如何在android recyclerview中显示嵌套的json数组
- java - 必须在 Android Studio 中单击两次按钮才能工作(与其他人的问题不同)
- sparql - 捕捉 sparql 以检索数据属性值