Thinkphp6.0 搜索器使用方法
搜索器
搜索器的作用是用于封装字段(或者搜索标识)的查询条件表达式,一个搜索器对应一个特殊的方法(该方法必须是public类型),方法命名规范为:searchFieldNameAttr, withSearch触发搜<?phpnamespace app\admin\model;
class Books extends \app\common\Base\Model
{
protected $name = 'books';
protected $field = [
'id',
'title', // 标题
'desc', // 备注
'author', // 作者
'class_tree_id', // 类型
'tags', // 标签
'cover', // 封面
'sort', // 排序
'status', // 状态
'create_time', // 创建时间
'update_time', // 更新时间
'delete_time', // 0 未删除 >0 未删除
];
// 搜索器
public function searchTitleAttr($query,$value,$data)
{
$query->whereLike('title', '%'.$value.'%');
}
public function searchStatusAttr($query,$value,$data)
{
$query->where('status', $value);
}
// 获取列表
public function getList($param)
{
$list = $this->withSearch(array_keys($param), $param)
->order('sort','desc')
->order('create_time', 'desc')
->paginate($param['limit'] ?: parent::LIMIT);
return $list;
}
}

浙公网安备 33010602011771号