larvel-admin 表单列表自定义查询条件
1.表单自定义查询条件
$grid -> model ( )
-> where ( 'user_id' , '>' , 0 )
-> groupBy ( 'dateTime' , 'user_id' )
-> orderBy ( 'created_at' , 'desc' )
-> selectRaw ( ' COUNT(1) AS countNumber, DATE_FORMAT(created_at,\'%Y-%m\') AS dateTime,user_id' ) ;
2.表单当前行,某一字段数据映射
$grid -> column ( 'user.school_id' , __ ( 'User id' ) ) -> display ( function ( ) {
$user_id = $this -> user_id ;
$school_name = DB :: table ( 'users' ) -> leftJoin ( 'school' , function ( $join ) {
$join -> on ( 'school.id' , '=' , 'users.school_id' ) ;
} ) -> where ( 'users.id' , '=' , $user_id ) -> select ( [ 'school.name' ] ) -> get ( ) ;
$school_name = json_decode ( $school_name , true ) ;
$school_name = $school_name [ 0 ] [ 'name' ] ;
return $school_name ;
} ) ;
3.自定义筛查条件
$grid -> filter ( function ( $filter ) {
$filter -> disableIdFilter ( ) ;
$filter -> like ( 'user.username' , '用户名' ) ;
$filter -> between ( 'created_at' , '时间范围' ) -> datetime ( ) ;
} ) ;
4.表单禁用按钮等
$grid -> tools ( function ( $tools ) {
$tools -> batch ( function ( $batch ) {
$batch -> disableDelete ( ) ;
} ) ;
} ) ;
$grid -> disableCreateButton ( ) ;
$grid -> disableActions ( ) ;