header('资讯管理') ->description('列表') ->body($this->grid()); } /** * Show interface. * * @param mixed $id * @param Content $content * @return Content */ public function show($id, Content $content) { return $content ->header('资讯管理') ->description('详情') ->body($this->detail($id)); } /** * Edit interface. * * @param mixed $id * @param Content $content * @return Content */ public function edit($id, Content $content) { return $content ->header('资讯管理') ->description('编辑') ->body($this->form()->edit($id)); } /** * Create interface. * * @param Content $content * @return Content */ public function create(Content $content) { return $content ->header('资讯管理') ->description('创建') ->body($this->form()); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new Article); $grid->id('ID'); $grid->title('标题'); $grid->description('简介')->display(function ($text) { return str_limit($text, 100, '...'); }); $grid->cover('标题图')->image('', 60, 60); $grid->status('状态')->switch(); $grid->order('排序'); $grid->filter(function ($filter) { // 去掉默认的id过滤器 $filter->disableIdFilter(); // 在这里添加字段过滤器 $filter->like('title', '标题'); }); return $grid; } /** * Make a show builder. * * @param mixed $id * @return Show */ protected function detail($id) { $show = new Show(Article::findOrFail($id)); $show->id('ID'); $show->title('标题'); $show->description('简介'); $show->cover('标题图')->image('', 60, 60); $show->content('详情'); $show->status('状态')->using(['1' => '正常', '0' => '关闭']); $show->order('排序'); $show->clicks('浏览量'); return $show; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new Form(new Article); $form->text('title', '标题')->rules('required'); $form->textarea('description', '简介')->rules('max:255', ['max' => '简介最多255字']); $form->image('cover', '标题图'); $form->editor('content', '详情')->rules('required', ['required' => '详情不能为空']); $form->switch('status', '状态')->default(1); $form->number('order', '排序')->default(0); $form->number('clicks', '浏览量')->default(0); return $form; } }