python测试开发django-185.bootstrap-table 后端搜索功能实现(queryParams)
前言
bootstrap-table 分页方式可以选 server 和client 两种分页方式。
- 当选择前端分页(client)的时候,可以在页面搜索table表格数据(不查询数据库)
- 当选择服务器分页(server)的时候,根据可以queryParams属性设置条件查询数据库
前面一篇已经写过前端分页,在前端页面搜索,只需开启search 搜索输入框即可实现
把搜索参数传到后端搜索,是通过 queryParams 属性实现的。
toolbar 添加搜索框
在 toolbar 添加搜索框和搜索按钮
页面效果
queryParams 设置
设置 queryParams 属性,params对象包含:limit, offset, search, sort, order, 可以自己添加搜索参数
//得到查询的参数,会在url后面拼接,如:?rows=5&page=2&sortOrder=asc&search_kw=&_=1564105760651
queryParams: function (params) {
// params对象包含:limit, offset, search, sort, order
//这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
var temp;
temp = {
page: (params.offset / params.limit) + 1, //页码
size: params.limit, //页面大小
project_name: $('#toolbar #project_name').val(),
publish_app: $('#toolbar #publish_app').val()
//查询框中的参数传递给后台
//search_kw: $('#search-keyword').val(), // 请求时向服务端传递的参数
};
return temp;
}
定义点击 search 按钮时刷新表格(点右侧的刷新按钮实现效果也是一样)
// 搜索功能
$("#search").click(function(){
// 刷新表格
$('#table').bootstrapTable('refresh');
})
点击搜索提交后,会看到请求参数已经带过去
后端根据传过去的参数,查询到结果返回就可以实现搜索功能了