column('id', 'ID')->sortable(); $grid->column('name', '宠物名称'); $grid->column('grade', '品阶')->display(function ($value) { if ($value instanceof PetGrade) { $value = $value->value; } $labels = [ PetGrade::FIRST->value => '一品', PetGrade::SECOND->value => '二品', PetGrade::THIRD->value => '三品', PetGrade::FOURTH->value => '四品', ]; return $labels[$value] ?? '未知'; }); $grid->column('level', '等级'); $grid->column('status', '状态')->display(function ($value) { if ($value instanceof PetStatus) { $value = $value->value; } $labels = [ PetStatus::NONE->value => '未知', PetStatus::NORMAL->value => '正常', PetStatus::FIGHTING->value => '战斗中', PetStatus::DEAD->value => '死亡', ]; return $labels[$value] ?? '未知'; }); $grid->quickSearch(['id', 'name']); $grid->filter(function (Grid\Filter $filter) { $filter->equal('id', 'ID'); $filter->like('name', '宠物名称'); $filter->equal('grade', '品阶')->select([ PetGrade::FIRST->value => '一品', PetGrade::SECOND->value => '二品', PetGrade::THIRD->value => '三品', PetGrade::FOURTH->value => '四品', ]); $filter->equal('status', '状态')->select([ PetStatus::NONE->value => '未知', PetStatus::NORMAL->value => '正常', PetStatus::FIGHTING->value => '战斗中', PetStatus::DEAD->value => '死亡', ]); }); $grid->disablePagination(true); $grid->disableActions(); $grid->disableBatchActions(); $grid->disableCreateButton(); }); } }