diff --git a/packages/banner/src/Http/Controllers/BannerController.php b/packages/banner/src/Http/Controllers/BannerController.php index 9743332..fdf5e0d 100644 --- a/packages/banner/src/Http/Controllers/BannerController.php +++ b/packages/banner/src/Http/Controllers/BannerController.php @@ -16,6 +16,8 @@ class BannerController extends AdminController { protected $translation = 'peidikeji.banner::banner'; + protected $extDefaults = [];//例如:['key1'=>''] + public function json(Request $request) { $keys = (array) $request->input('keys'); @@ -50,8 +52,8 @@ class BannerController extends AdminController { return Grid::make(new Banner(), function ($grid) { $grid->disableRowSelector(); - $grid->column('name'); $grid->column('path')->image(100); + $grid->column('name'); $grid->column('sort'); $grid->column('is_enable')->if(function(){ return !config('admin.permission.enable') || Admin::user()->can('dcat.admin.banners.edit'); @@ -113,11 +115,7 @@ class BannerController extends AdminController $form->number('sort') ->min(0) ->help('数值越大, 越靠前'); - // $form->embeds('ext', function (EmbeddedForm $form) { - // $form->select('type', '类型')->options(Target::options()); - // $form->text('value', '地址'); - // // $form->switch('auth', '登录认证'); - // }); + $form->keyValue('ext')->default($this->extDefaults)->setKeyLabel('键名')->setValueLabel('键值'); $form->switch('is_enable'); $form->text('remarks'); }); diff --git a/packages/banner/src/Models/Banner.php b/packages/banner/src/Models/Banner.php index 2df79ce..752bd7f 100644 --- a/packages/banner/src/Models/Banner.php +++ b/packages/banner/src/Models/Banner.php @@ -13,6 +13,10 @@ class Banner extends Model protected $fillable = ['ad_id', 'path', 'name', 'sort', 'is_enable', 'ext', 'remarks']; + protected $casts = [ + 'ext' => 'array' + ]; + public function ad() { return $this->belongsTo(BannerAd::class, 'ad_id');