model()->orderByDesc('id'); $grid->column('id')->sortable(); $grid->column('name')->link(function () { return $this->body; }); $grid->column('cover_path')->image('', 200, 100); $grid->column('category.name', '分类名称'); $grid->column('resource_type')->using(LibraryCategory::resourceTypeMaps)->label(); $grid->column('source'); // $grid->column('body'); $grid->column('sort', '排序')->sortable(); $grid->column('status', '状态')->using(\App\Models\LibraryBook::statusMaps)->label(); // $grid->column('created_at'); $grid->column('updated_at')->sortable(); $grid->filter(function (Grid\Filter $filter) { $filter->equal('id'); $filter->like('name', '名称'); $filter->in('category_id', '分类')->multipleSelect(LibraryCategory::selectOptions()); $filter->in('resource_type', '资源类型')->multipleSelect(\App\Models\LibraryCategory::resourceTypeMaps); $filter->like('source', '来源'); $filter->equal('status', '状态')->select(\App\Models\LibraryBook::statusMaps); }); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new LibraryBook(), function (Show $show) { $show->field('id'); $show->field('name'); $show->field('cover_path'); $show->field('resource_type'); $show->field('category_id'); $show->field('source'); $show->field('body'); $show->field('sort'); $show->field('status'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new LibraryBook(), function (Form $form) { $form->display('id'); $form->select('category_id')->options(LibraryCategory::selectOptions())->required(); $form->select('resource_type')->options(LibraryCategory::resourceTypeMaps)->required(); $form->text('name')->required(); $form->image('cover_path')->uniqueName()->autoUpload()->required(); $form->url('body')->required(); $form->text('source')->required(); $form->number('sort', '排序')->default(0)->help('越大越靠前'); $form->select('status', '状态')->options(\App\Models\LibraryCategory::statusMaps)->default(1); $form->hidden('admin_id')->value(Admin::user()->id); $form->saved(function (Form $form) { return $form->response()->success('保存成功')->redirect('/library/book'); }); $form->disableEditingCheck(); $form->disableDeleteButton(); $form->disableViewButton(); }); } }