model()->with(['user:id,name,avatar'])->orderByDesc('id'); $grid->column('id')->sortable(); $grid->column('user_id')->display(function (){ if($this->user){ $str = ""; $str.="
"; $str.=''; $str.='
'; $str.='

ID:'.$this->user->id.'

'; $str.='

'.trans('feeds.fields.nickname').':'.$this->user->name.'

'; $str.="
"; $str.="
"; return $str; }else{ return ''; } }); $grid->column('team_id')->display(function ($res){ if($res>0){ $team = Team::query()->find($res); if($team){ return ''.trans('feeds.fields.team').'

'.$team->name.''; }else{ return ""; } }else{ return ''.trans('feeds.fields.personal').''; } }); $grid->column('forward_id')->display(function ($res){ if($res>0){ return ''.trans('feeds.fields.forward').' ID:'.$res.''; }else{ return ''.trans('feeds.fields.original').''; } }); $grid->column('content')->limit(30); $grid->column('file_url')->display(function ($v){ return json_decode($v,true); })->image('', 60,60); $grid->column('status')->switch(); $grid->column('like_num'); $grid->column('forward_num'); $grid->column('address_info'); $grid->column('match_title')->display(function ($res){ //dd($this->game_per_id); $game_per_id = isset($this->game_per_id)&&!empty($this->game_per_id)?$this->game_per_id:'###'; if(!empty($res)) { return '' . $res . '
'.trans('feeds.fields.scorecard').'
'; }else{ return ''; } }); $grid->column('created_at'); $grid->filter(function (Grid\Filter $filter) { $filter->equal('id'); $filter->like('user.name'); $team = Team::query()->select(['id','name'])->get()->toArray(); $team_arr[0] = trans('feeds.fields.personal'); foreach ($team as $v){ $team_arr[$v['id']] = $v['name']; } $filter->equal('team_id')->select($team_arr); $filter->like('content'); }); //批量操作 // $grid->batchActions(function (Grid\Tools\BatchActions $batch) { // $batch->disableDelete(); // }); //操作管理 $grid->actions(function (Grid\Displayers\Actions $actions) { $actions->disableView(); $actions->disableEdit(); $actions->append(new FeedAction()); $actions->append(new LikeAction()); $actions->append(new ForwardAction()); }); return $grid; } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new Feed(), function (Show $show) { $show->field('id'); $show->field('user_id'); $show->field('content'); $show->field('file_url'); $show->field('status'); $show->field('like_num'); $show->field('address_info'); $show->field('match_title'); $show->field('game_per_id'); $show->field('is_delete'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new Feed(), function (Form $form) { $form->display('id'); $user = User::query()->select(['id','name'])->get()->toArray(); $user_arr = array(); foreach ($user as $v){ $user_arr[$v['id']] = $v['name']; } $form->select('user_id')->options($user_arr); $form->textarea('content'); $form->text('file_url'); $form->switch('status')->default(1); $form->number('like_num')->default(0); $form->text('address_info'); $form->text('match_title'); $form->text('game_per_id'); $form->text('is_delete'); $form->display('created_at'); $form->display('updated_at'); $form->footer(function ($footer) { // 去掉`查看`checkbox $footer->disableViewCheck(); // 去掉`继续编辑`checkbox $footer->disableEditingCheck(); // 去掉`继续创建`checkbox $footer->disableCreatingCheck(); }); }); } }