1.权限列表控制器方法
public function index()
{
//1.从权限模型中获取所有数据
$permission = Permission::get();
//2.将获取的所有权限数据,返回给权限列表模板
return view('admin.permission.list',compact('permission'));
}
2.在权限列表模板显示数据
<th>ID</th>
<th>权限名称</th>
<th>权限对应的控制器方法</th>
<th>操作</th>
@foreach($permission as $v)
<tr>
<td>{{ $v->id }}</td>
<td>{{ $v->per_name }}</td>
<td>{{ $v->per_url }}</td>
<td class="td-manage">
<a title="编辑"></a>
<a title="删除"></a>
</td>
</tr>
@endforeach
3.添加权限添加链接地址
<a _href="{{ url('admin/permission/create') }}">
<cite>添加权限</cite>
4.添加权限控制器方法
public function create()
{
//1.返回添加权限页
return view('admin.permission.add');
}
5.添加权限模板
- 位置:
resources/views/admin/permission/add.blade.php
- 表单提交地址
<form class="layui-form" action="{{ url('admin/permission') }}" method="post">
- 防止csrf
{{ csrf_field() }}
- 表单提交项
<span class="x-red">*</span>权限名称
<span class="x-red">*</span>控制器方法
- 表单提交的name和value
<input type="text" name="per_name">
<input type="text" name="per_url">
- 提交按钮
<button>增加</button>
6.使用ajax来添加权限
//点击表单提交事件add()方法
<button class="layui-btn" lay-filter="add" lay-submit="">
增加
</button>
//监听提交事件submit(add)
form.on('submit(add)', function(data) {
//发异步,把数据提交给php
$.ajax({
//提交的类型
type: 'POST',
//要提交的网址
url: '/admin/permission',
//服务端返回的数据类型
dataType: 'json',
//请求头携带token
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
//data.field为当前容器的全部表单字段,名值对形式:{name: value}
data: data.field,
//请求成功,服务端返回的数据
success: function(data) {
//console.log(data);
//如果,返回的data数据的数组的键status的值等于0,表示请求成功
if (data.status == 0) {
//弹层提示data数据的数组的键message的值,layer图标{icon:6}笑脸
layer.alert(data.message,{icon:6},function(){
//刷新父页面
parent.location.reload(true);
});
//否则,返回的data数据的数组的键status的值不等于0,表示请求失败
}else{
//弹层提示data数据的数组的键message的值,layer图标{icon:5}哭脸
layer.alert(data.message,{icon:5});
}
},
error: function() {
//错误信息
}
});
return false;
});
public function store(Request $request)
{
//1.获取表单提交过来的数据
$input = $request->all();
//2.进行表单验证
//3.向数据表permission中插入数据
$res = Permission::create($input);
//4.判断插入是否成功
//如果插入成功,创建data数组,用来给客户端响应json数据
if ($res) {
$data = [
'status'=>0,
'message'=>'添加成功',
];
//否则插入失败,创建data数组,用来给客户端响应json数据
}else {
$data = [
'status'=>1,
'message'=>'添加失败',
];
}
//json_encode($data);
//将data数据返回给客户端
return $data;
}