laravel角色模块创建

一、角色列表

1.1、创建一个资源控制器

创建资源控制器
php artisan make:controller Admin/RoleController -r 或者php artisan make:controller Admin/RoleController --resource
在这里插入图片描述
在这里插入图片描述
可以看到默认给我们生成了方法。
然后修改我们的控制权继承:
在这里插入图片描述

1.2、创建资源路由

// 资源路由 角色管理
Route::resource('role', 'RoleController');

在这里插入图片描述
我们输入php artisan route:list可以查看路由列表:
在这里插入图片描述
可以看到路由别名name不符合我们的写法。我们修改:
在这里插入图片描述
再次输入php artisan route:list查看路由列表:
在这里插入图片描述
可以看到此时就符合我们的写法了。
还有中修改我们直接在路由分组那去更改:
在这里插入图片描述
再次输入php artisan route:list查看路由列表:
在这里插入图片描述
可以看到符合我们的写法。
最后给出当前路由所有代码:

<?php
// 后台路由
// 路由分组
Route::group(['prefix' => 'admin', 'namespace' => 'Admin'], function () {
    // 登录显示
    Route::get('login', 'LoginController@index')->name('admin.login');
    // 登录处理
    Route::post('login', 'LoginController@login')->name('admin.login');

    // 后台需要验证才能通过
    Route::group(['middleware' => ['chadmin'], 'as' => 'admin.'], function () {
        // 后台首页显示
        Route::get('index', 'IndexController@index')->name('index');

        // 欢迎界面路由
        Route::get('welcome', 'IndexController@welcome')->name('welcome');

        // 退出
        Route::get('logout', 'IndexController@logout')->name('logout');

        // 用户管理
        // 用户列表
        Route::get('user/index', 'UserController@index')->name('user.index');

        // 用户添加页面显示路由
        Route::get('user/add', 'UserController@add')->name('user.add');

        // 用户添加操作
        Route::post('user/add', 'UserController@create')->name('user.add');

        // 用户删除操作
        Route::get('user/del/{id}', 'UserController@del')->name('user.del');

        // 删除还原
        Route::get('user/restore/{id}', 'UserController@restore')->name('user.restore');

        // 全选删除
        Route::delete('user/delall', 'UserController@delall')->name('user.delall');

        // 发送邮件
        Route::get('user/email', function () {
            \Mail::raw('测试一下发邮件', function (\Illuminate\Mail\Message $message) {
                // 获取回调方法中的形参
                dump(func_get_args());

                // 发送谁
                $message->to('136072944@qq.com', 'Justin');

                // 主题
                $message->subject('测试邮件');
            });
        }) -> name('email');

        // 修改用户显示
        Route::get('user/edit/{id}', 'UserController@edit') -> name('user.edit');

        // 修改用户处理
        Route::put('user/edit/{id}', 'UserController@update') -> name('user.edit');

        // 资源路由 角色管理
        Route::resource('role', 'RoleController');
    });
});

1.3、创建模版

我们可以直接把resources\views\admin\user复制一份改名为role来进行修改:
在这里插入图片描述

修改模版代码:
resources\views\admin\index\index.blade.php
在这里插入图片描述


resources\views\admin\role\index.blade.php

<!DOCTYPE HTML>
<html>

<head>
	<meta charset="utf-8">
	<meta name="renderer" content="webkit|ie-comp|ie-stand">
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
	<link rel="stylesheet" type="text/css" href="/admin/static/h-ui/css/H-ui.min.css" />
	<link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/css/H-ui.admin.css" />
	<link rel="stylesheet" type="text/css" href="/admin/lib/Hui-iconfont/1.0.8/iconfont.css" />
	<link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/skin/default/skin.css" id="skin" />
	<link rel="stylesheet" type="text/css" href="/admin/static/h-ui.admin/css/style.css" />
	<link rel="stylesheet" href="{{asset('css/app.css')}}">
	<style>
		a {
			color: #fff;
		}
	</style>
	<title>角色管理</title>
</head>

<body>
	<nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页 <span class="c-gray en">&gt;</span> 用户中心 <span class="c-gray en">&gt;</span> 角色管理 <a class="btn btn-success radius r" style="line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新"><i class="Hui-iconfont">&#xe68f;</i></a></nav>
	<!-- 消息提示 -->
	@include('admin.common.msg')

	<div class="page-container">
		<form method="get" class="text-c"> 角色名称:
			<input type="text" class="input-text" style="width:250px" placeholder="输入角色名称" id="" name="kw" autocomplete="off">
			<button type="submit" class="btn btn-success radius" id="" name=""><i class="Hui-iconfont">&#xe665;</i> 搜角色</button>
		</form>
		<div class="cl pd-5 bg-1 bk-gray mt-20">
			<span class="l">
				<a href="{{route('admin.role.create')}}" class="btn btn-primary radius">
					<!-- onclick="member_add('添加用户','member-add.html','','510')" -->
					<i class="Hui-iconfont">&#xe600;</i> 添加角色
				</a>
			</span>
			<span class="r">共有数据:<strong>{!!$data->total()!!}</strong></span>
		</div>
		<div class="mt-20">
			<table class="table table-border table-bordered table-hover table-bg table-sort">
				<thead>
					<tr class="text-c">
						<th width="80">ID</th>
						<th width="100">角色名称</th>
						<th width="40">查看权限</th>
						
						<th width="130">加入时间</th>
						<th width="100">操作</th>
					</tr>
				</thead>
				<tbody>
					@foreach($data as $item)
					<tr class="text-c">
						<td>{{$item -> id}}</td>
						<td>{{$item -> name}}</td>
						<td>
							<span class="label label-success radius">
								<a href="#">权限</a>
							</span>
						</td>
						<td>{{$item -> created_at}}</td>
						<td class="td-manage">
							<span class="label label-primary radius">
								<a href="{{route('admin.role.edit', $item)}}">修改</a>
							</span>
							<span class="label label-danger radius">
								<a href="{{route('admin.role.destroy', ['id' => $item -> id])}}">删除</a>
							</span>
						</td>
					</tr>
					@endforeach
				</tbody>
			</table>
			<!-- 分页 -->
			{{ $data -> links() }}
		</div>
	</div>
	<!--_footer 作为公共模版分离出去-->
	<script type="text/javascript" src="/admin/lib/jquery/1.9.1/jquery.min.js"></script>
	<script type="text/javascript" src="/admin/lib/layer/2.4/layer.js"></script>
	<script type="text/javascript" src="/admin/static/h-ui/js/H-ui.min.js"></script>
	<script type="text/javascript" src="/admin/static/h-ui.admin/js/H-ui.admin.js"></script>
	<!--/_footer 作为公共模版分离出去-->

	<!--请在下方写此页面业务相关的脚本-->
	<script type="text/javascript" src="/admin/lib/My97DatePicker/4.8/WdatePicker.js"></script>
	<script type="text/javascript" src="/admin/lib/datatables/1.10.15/jquery.dataTables.min.js"></script>
	<script type="text/javascript" src="/admin/lib/laypage/1.2/laypage.js"></script>
	<script type="text/javascript">

		/*用户-删除*/
		function member_del(obj, id) {
			layer.confirm('确认要删除吗?', function(index) {
				$.ajax({
					type: 'POST',
					url: '',
					dataType: 'json',
					success: function(data) {
						$(obj).parents("tr").remove();
						layer.msg('已删除!', {
							icon: 1,
							time: 1000
						});
					},
					error: function(data) {
						console.log(data.msg);
					},
				});
			});
		}

	</script>
</body>

</html>

1.4、添加数据

通过navicat直接添加两条数据:
在这里插入图片描述

1.5、效果

在这里插入图片描述

在学习的php的路上,如果你觉得本文对你有所帮助的话,那就请关注点赞评论三连吧,谢谢,你的肯定是我写博的另一个支持。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你华还是你华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值