修改后台分类

This commit is contained in:
2020-09-16 08:36:22 +08:00
parent f91a3b76c1
commit 1f6ddc1993

View File

@@ -35,6 +35,14 @@ class IndexController extends AdminController
$form->text('title', '分类名称')->rules('required'); $form->text('title', '分类名称')->rules('required');
$form->select('type', '分类类型') $form->select('type', '分类类型')
->options(Category::TYPES) ->options(Category::TYPES)
->when('show', function (WidgetsForm $form) {
$form->select('article_id', '关联文章')
->options(function ($option, $info) {
return Article::whereHas('category', function ($q) {
$q->where('type', 'show');
})->pluck('title', 'id');
})->help('当分类类型是文章详情的时候需要选择关联文章');
})
->required(); ->required();
$form->textarea('description', '分类简介') $form->textarea('description', '分类简介')
->rules('nullable'); ->rules('nullable');
@@ -43,6 +51,7 @@ class IndexController extends AdminController
->removable() ->removable()
->uniqueName(); ->uniqueName();
$form->number('order', '排序')->default(0); $form->number('order', '排序')->default(0);
$form->switch('top_show', '顶部导航显示')->states()->default(0);
$form->switch('status', '显示')->states()->default(1); $form->switch('status', '显示')->states()->default(1);
$form->action(admin_url('categories')); $form->action(admin_url('categories'));
@@ -89,6 +98,14 @@ class IndexController extends AdminController
$form->text('title', '分类名称')->rules('required'); $form->text('title', '分类名称')->rules('required');
$form->select('type', '分类类型') $form->select('type', '分类类型')
->options(Category::TYPES) ->options(Category::TYPES)
->when('show', function (Form $form) {
$form->select('article_id', '关联文章')
->options(function ($option, $info) {
return Article::whereHas('category', function ($q) {
$q->where('type', 'show');
})->pluck('title', 'id');
})->help('当分类类型是文章详情的时候需要选择关联文章');
})
->required() ->required()
->rules('required'); ->rules('required');
$form->textarea('description', '分类简介')->rows(4)->rules('nullable'); $form->textarea('description', '分类简介')->rows(4)->rules('nullable');
@@ -97,28 +114,19 @@ class IndexController extends AdminController
->removable() ->removable()
->uniqueName(); ->uniqueName();
$form->number('order', '排序')->default(0)->help('正序优先'); $form->number('order', '排序')->default(0)->help('正序优先');
$form->select('article_id', '关联文章') $form->switch('top_show', '顶部导航显示')->states()->default(0);
->options(function ($option, $info) {
$category = $this;
if ($category) {
return Article::where('category_id', $category->id)->pluck('title', 'id');
} else {
return [0 => '没有数据'];
}
})->help('当分类类型是文章详情的时候需要选择关联文章');
$form->switch('status', '显示')->states()->default(1); $form->switch('status', '显示')->states()->default(1);
$form->saving(function (Form $form) { $form->saving(function (Form $form) {
if (request()->has('title')) { if (request()->has('title')) {
if (request()->type == Category::TYPE_SHOW && empty(request()->article_id)) { // if (request()->type == Category::TYPE_SHOW && empty(request()->article_id)) {
$error = new MessageBag([ // $error = new MessageBag([
'title' => '错误', // 'title' => '错误',
'message' => '文章类型是文章详情的时候需要选择关联文章', // 'message' => '文章类型是文章详情的时候需要选择关联文章',
]); // ]);
//
return back()->withInput()->with(compact('error')); // return back()->withInput()->with(compact('error'));
} // }
} }
}); });