laravel8.5与layuiadmin整合(7)

发布时间:2022-06-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了laravel8.5与layuiadmin整合(7)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

32.在文件中/app/Http/Controllers/Admin/UserController添加删除方法

    /**
     * 删除用户
     * @param Request $request
     * @return IlluminateHttpJsonResponse
     */
    public function destroy(Request $request) {
        $ids = $request->get('ids');

        if (empty($ids)){
            return response()->json(['code'=>1,'msg'=>'请选择删除项']);
        }
        if (User::destroy($ids)){
            return response()->json(['code'=>0,'msg'=>'删除成功']);
        }
        return response()->json(['code'=>1,'msg'=>'删除失败']);

    }

此时删除用户的方法,可使用了 33. 添加编辑用户,在文件/routes/web.php中添加

// 系统管理
Route::group(['PRefix' => 'admin','middleware' => 'auth'],function() {
    .......
    //编辑用户
    Route::get('user/{id}/edIT',[AppHttpControllersAdminUserController::class, 'edit'])
        ->name('admin.user.edit');
    // 保存编辑用户
    Route::put('user/{id}/update',[AppHttpControllersAdminUserController::class, 'update'])
        ->name('admin.user.update');

});

34.在文件中添加对应的修改方法/app/Http/Controllers/Admin/UserController.php

    /**
     * 显示编辑用户
     * @param $id
     * @return IlluminateContractsViewFactory|IlluminateContractsViewView
     */
    public function edit($id) {
        $user = User::findOrFail($id);
        return view('admin.user.edit',compact('user'));
    }

    /**
     * 保存编辑的用户
     * @param UserUpdateRequest $request
     * @param $id
     * @return IlluminateHttpredirectResponse
     */
    public function update(UserUpdateRequest $request, $id)
    {
        $user = User::findOrFail($id);

        $data = $request->except('password');
        if ($request->get('password')){
            $data['password'] = bcrypt($request->get('password'));
        }
        if ($user->update($data)){
            return redirect()->to(route('admin.user'))->with(['status'=>'更新用户成功']);
        }
        return redirect()->to(route('admin.user'))->withErrors('系统错误');
    }

35. 添加对应的请求方法文件/app/Http/Requests/UserUpdateRequest.php

namespace AppHttpRequests;

use IlluminateFoundationHttpFormRequest;

class UserUpdateRequest extends FormRequest {
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        $reture = ['name' => ['required', 'string']];
        if ($this->get('password') || $this->get('password_confirmation')){
            $reture['password'] = 'required|confirmed|min:8|max:14';
        }
        return $reture;
    }
}

36.添加对应的模板文件
/resources/views/admin/user/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.user.update',['id'=>$user->id])}}" method="post">
            <input tyPE="hidden" name="id" value="{{$user->id}}">
            {{method_field('put')}}
            @include('admin.user._form')
        </form>
    </div>
</div>
@endsection

此时对应的用户编辑可以使用了,以上用户的添加,删除,编辑,查找,都可以正使用了,接下来,添加对应的权限功能

37.安装权限功能,选择 https://spatie.be/docs/laravel-permission根据文档安装,执行

composer require spatie/laravel-permission

config/app.php 文件中,添加

'providers' => [
    // ...
    SpatiePermissionPermissionServiceProvider::class,
];

执行以下命令

php artisan vendor:publish --provider="SpatiePermissionPermissionServiceProvider"

php artisan optimize:clear

php artisan migrate

&nbsp;

脚本宝典总结

以上是脚本宝典为你收集整理的laravel8.5与layuiadmin整合(7)全部内容,希望文章能够帮你解决laravel8.5与layuiadmin整合(7)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。