バックエンドの PHP の変更#
#通常、以下のコードを使用してコントローラーでリクエストパラメータを取得できます:
$filter = json_decode($this->request->get("filter", ''), true);
$op = json_decode($this->request->get("op", '','trim'), true);
#isset()関数を使用して特定のパラメータが存在するかどうかを判断し、unset()を使用して不要なパラメータを削除します。次に、
$filter[''] = '';
$op[''] = '';
#カスタムパラメータとクエリ条件を設定します。
#そして、再代入します:
$this->request->get(['filter' => json_encode($filter, true)]);
$this->request->get(['op' => json_encode($op, true)]);
list($where, $sort, $order, $offset, $limit) = $this->buildparams();
フロントエンドの table の JavaScript の変更#
table.bootstrapTable({
url: $.fn.bootstrapTable.defaults.extend.index_url,
pk: 'id',
sortName: 'id',
searchFormVisible: true,
toolbar: '#toolbar',
queryParams:function(params){
let filter = JSON.parse(params.filter);
let op = JSON.parse(params.op);
//検索条件を再構築し、個人の要件に応じて変更します
if (filter['status'] == undefined){
filter['status'] = 0;
op['status'] = '>';
params.filter = JSON.stringify(filter);
params.op = JSON.stringify(op);
//console.log(params);
}
return params;
},
columns: [
col
]
});