laravel8.5与layuiadmin整合(9)
43.编辑,删除角色功能
控制器添加方法
/app/Http/Controllers/Admin/RoleController.php
/** * 编辑角色 * @param $id * @return \Illuminate\Contracts\View\Factory|\Illuminate\Contracts\View\View */ public function edit($id) { $role = Role::findOrFail($id); return view('admin.role.edit',compact('role')); } /** * 更新角色 * @param Request $request * @param $id * @return \Illuminate\Http\RedirectResponse */ public function update(Request $request, $id) { $role = Role::findOrFail($id); $data = ['name' => $request->input('name')]; if ($role->update($data)){ return redirect()->to(route('admin.role'))->with(['status'=>'更新角色成功']); } return redirect()->to(route('admin.role'))->withErrors('系统错误'); } /** * 删除用户 * @param Request $request * @return \Illuminate\Http\JsonResponse */ public function destroy(Request $request) { $ids = $request->get('ids'); if (empty($ids)){ return response()->json(['code'=>1,'msg'=>'请选择删除项']); } if (Role::destroy($ids)){ return response()->json(['code'=>0,'msg'=>'删除成功']); } return response()->json(['code'=>1,'msg'=>'删除失败']); }
44.模板添加以下文件
/resources/views/admin/role/edit.blade.php
@extends('admin.base') @section('content') <div class="layui-card"> <div class="layui-card-header layuiadmin-card-header-auto"> <h2>更新角色</h2> </div> <div class="layui-card-body"> <form class="layui-form" action="{{route('admin.role.update',['id'=>$role->id])}}" method="post"> <input type="hidden" name="id" value="{{$role->id}}"> {{method_field('put')}} @include('admin.role._form') </form> </div> </div> @endsection
45.添加角色删除路由
/routes/web.php
//删除角色 Route::delete('role/destroy',[App\Http\Controllers\Admin\RoleController::class, 'destroy']) ->name('admin.role.destroy');
至此,角色的增删改,都可以了,这里不开发查询功能
同理,开发权限,基本功能与上面的角色是一样的
46.路由权限开发
/routes/web.php
// 权限管理 Route::group(['prefix' => 'admin','middleware'=>'auth'],function() { // 权限展示 Route::get('permission',[App\Http\Controllers\Admin\PermissionController::class,'index']) ->name('admin.permission'); // 获取权限数据 Route::get('permission/data',[App\Http\Controllers\Admin\PermissionController::class,'data']) ->name('admin.permission.data'); //创建权限 Route::get('permission/create',[App\Http\Controllers\Admin\PermissionController::class,'create']) ->name('admin.permission.create'); // 保存新创建的权限 Route::post('permission/store',[App\Http\Controllers\Admin\PermissionController::class,'store']) ->name('admin.permission.store'); //编辑权限 Route::get('permission/{id}/edit',[App\Http\Controllers\Admin\PermissionController::class,'edit']) ->name('admin.permission.edit'); // 保存编辑的权限 Route::put('permission/{id}/update',[App\Http\Controllers\Admin\PermissionController::class,'update']) ->name('admin.permission.update'); // 删除权限 Route::delete('permission/destroy',[App\Http\Controllers\Admin\PermissionController::class,'destroy']) ->name('admin.permission.destroy'); });