diff --git a/app/Admin/Controllers/CategoryController.php b/app/Admin/Controllers/CategoryController.php index 972af65..df4c522 100644 --- a/app/Admin/Controllers/CategoryController.php +++ b/app/Admin/Controllers/CategoryController.php @@ -2,7 +2,6 @@ namespace App\Admin\Controllers; -use App\Common\UserStatus; use App\Models\Category; use Dcat\Admin\Form; use Dcat\Admin\Grid; @@ -73,10 +72,15 @@ class CategoryController extends AdminController protected function form() { return Form::make(new Category(), function (Form $form) { + $options = Category::selectOptions(fn($query) => $query->where('agent_id', 0)); + $form->display('id'); - $form->select('pid')->options(Category::selectOptions()); - $form->text('name'); + $form->select('pid')->options($options)->required(); + $form->text('name')->required(); $form->text('sort')->default(255); + })->saving(function (Form $form) { + //后台管理员的agent_id为0 + $form->agent_id = 0; }); } } diff --git a/app/Models/Category.php b/app/Models/Category.php index 71d5f4d..74d2503 100644 --- a/app/Models/Category.php +++ b/app/Models/Category.php @@ -3,7 +3,6 @@ namespace App\Models; use Dcat\Admin\Traits\ModelTree; -use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Factories\HasFactory; class Category extends BaseModel @@ -25,9 +24,4 @@ class Category extends BaseModel //覆盖父类,不按id desc排序 protected static function booted() { } - public static function selectOptions(\Closure $closure = null) - { - $options = (new static())->withQuery($closure)->buildSelectOptions(); - return collect($options)->all(); - } }