1.创建后台用户资源路由
//后台用户模块相关路由
Route::resource('user','UserController');
2.创建后台用户资源控制器
f:\xampp\php\php.exe artisan make:controller Admin/UserController --resource
3.查看所有资源路由对应的控制器方法
f:\xampp\php\php.exe artisan route:list
4.用户列表和添加用户的地址链接
//用户列表
<a _href="{{ url('admin/user') }}">
<cite>用户列表</cite>
</a>
//添加用户
<a _href="{{ url('admin/user/create') }}">
<cite>添加用户</cite>
</a>
5.编写用户列表控制器方法
// 获取用户列表
public function index()
{
return view('admin.user.list');
}
6.引入用户列表页模板
- 位置:views/admin/user/list.blade.php
- 修改标题:
<title>用户列表页</title>
- 引入css和js:
@include('admin.public.styles')
@include('admin.public.script')
7.编写添加用户控制器方法
//返回用户添加页面
public function create()
{
return view('admin.user.add');
}
8.在用户列表页点击添加用户按钮,添加用户地址链接
<button class="layui-btn"
//x_admin_show()的第一个参数是页面标题,第二个参数是请求的页面网址,第三个参数是页面的宽高
onclick="x_admin_show('添加用户','{{url('admin/user/create')}}',600,400)">
添加
</button>
9.引入添加用户页模板
- 位置:
views/admin/user/add.blade.php
- 引入css和js:
@include('admin.public.styles')
@include('admin.public.script')
10.用ajax实现添加用户的操作
- ajax事件
//点击添加按钮,触发x_admin_show的onlick事件
<button class="layui-btn"
//x_admin_show()的第一个参数是页面标题,第二个参数是请求的页面网址,第三个参数是页面的宽高
onclick="x_admin_show('添加用户','{{url('admin/user/create')}}',600,400)">
<i class="layui-icon"></i>
添加
</button>
- 表单请求头添加csrf-token
<meta name="csrf-token" content="{{ csrf_token() }}">
- js代码
//监听提交
form.on('submit(add)', function(data) {
//发异步,把数据提交给php
$.ajax({
//发送的方式
type: 'POST',
//发送的网址
url: '/admin/user',
//请求的数据类型
dataType: 'json',
//请求头附带layui框架的csrf-token
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
//data.field为当前容器的全部表单字段,名值对形式:{name: value}
data: data.field,
success: function(data) {
//弹层提示添加成功,并刷新父页面
//console.log(data);
if (data.status == 0) {
layer.alert(data.message,{icon:6},function(){
//刷新父页面
parent.location.reload(true);
});
}else{
layer.alert(data.message,{icon:5});
}
},
error: function() {
//错误信息
}
});
//阻止网页submit事件提交
return false;
});
11.执行用户添加操作控制器方法
//执行用户添加操作
public function store(Request $request)
{
//1.接收前台表单提交的数据:email、pass、repass
$input = $request->all();
//2.进行表单验证
//3.添加到数据库的user表
$username = $input['email'];
$pass = Crypt::encrypt($input['pass']);
$res = User::create(['user_name'=>$username,'user_pass'=>$pass,'email'=>$input['email']]);
//4.根据添加是否成功,给客户端返回一个json格式的反馈
if ($res) {
$data = [
'status'=>0,
'message'=>'添加成功',
];
}else {
$data = [
'status'=>1,
'message'=>'添加失败',
];
}
//json_encode($data);laravel默认将$data数组转换成json数据
return $data;
}