「Dcat Admin」修改grid数据来源默认查询条件后,查询过滤和快捷搜索不起作用!
问题背景
我有一个行政地区表(id, parent_id, parent_code, code, name),在不同的行政账号下,只展示该地区及其下属地区。代码
if ($owner['level']['slug'] == 'city') { // 当前地区是 市 $grid->model()->where('code', 'LIKE', substr($owner['code'], 0, 4).'%')->orWhere('code', $owner['code']); } elseif ($owner['level']['slug'] == 'district') { // 当前地区是 区 $grid->model()->where('code', 'LIKE', $owner['code'].'%')->orWhere('code', $owner['code']); } $grid->column('id'); $grid->column('name'); $grid->column('parent_id', '父级地区ID'); $grid->column('parent_code', '父级地区编码'); $grid->column('code', '地区编码'); $grid->filter(function (Grid\Filter $filter) { $filter->panel()->expand(); $filter->like('parent_code','父级编码')->width(3); $filter->like('code','编码')->width(3); $filter->like('name','地区名称')->width(3); }); $grid->quickSearch(['parent_code', 'code', 'name'])->placeholder('根据名称/编码/父级编码搜索');
问题
上面两个过滤是根据code来like查询,使用了之后,下面的filter和quickSearch不起作用,搜索内容后,参数已经加到URL后,但列表并没有反应,把默认过滤去掉之后又可以查询,请问是怎么回事?