Laravel5.6 博客搭建系列二--搭建后台管理系统
创建用户认证系统
本篇文章跟大家分享搭建后台管理认证系统以及创建后台视图模板
Laravel 中实现登录认证非常简单。实际上,几乎所有东西 Laravel 都已经为你配置好了。配置文件位于 config/auth.php,其中包含了用于调整认证服务行为的、文档友好的选项配置。
执行php artisan make:auth
和 php artisan migrate
创建控制器以及需要的数据表。脚本会在目录app/Http/Auth 下创建一下几个文件:
-
创建必须的控制器
-
LoginController 登录退出操作,继承App\Http\Controllers\Controller,所有的业务逻辑在
trait AuthenticatesUsers
中,可以通过设置属性$redirectTo
改变登录之后的跳转地址,设置$redirectAfterLogout
改变退出之后的跳转地址; -
RegisterController 提供用户注册相关操作,所有业务逻辑在
trait RegistersUsers
中 -
ForgotPasswordController 忘记密码,发送验证邮件相关操作
-
ResetPasswordController 重置密码相关操作
-
- 添加路由:
routes/web.php文件中添加用户认证相关路由
Auth::routes();
-
创建视图模板文件
-layouts 文件夹,创建app.blade.php 作为整个应用的视图模板文件
-auth 文件夹,分别创建登录,注册,找回密码等视图文件
创建后台管理首页
执行以下命令:
php artisan make:controller Admin\\DefaultController
脚本会在app\Http\Controlles下创建admin目录,并创建DefaultController文件,修改DefaultController文件,添加后台显示文章列表操作,添加以下代码:
public function index()
{
return view('admin.default.index');
}
- 创建视图文件
在resources下创建admin/post目录,并在该目录下创建admin/post/index.blade.php文件,文件内容如下:
@extends('layouts.app')
@section('content')
<div class="container">
welcome to Post Admin
</div>
@endsection
- 修改路由route/web.php,限制后台必须登录
Route::get('admin', function () {
return redirect('/admin/default');
});
Route::namespace('Admin')->middleware(['auth'])->group(function () {
Route::resource('admin/default', 'DefaultController');
});
创建后台模板
很多情况下前后台使用的模板不同,因此需要给后台自定义视图模板。复制一份resources/layouts/app.blade.php 到resources/admin/layouts/main.blade.php
在
{% raw %}
<a class="navbar-brand" href="{{ url('/') }}">
{{ config('app.name', 'Laravel') }}
</a>
{% endraw %}
后面加入以下内容,给后台添加导航栏
{% raw %}
<ul class="nav">
<li class="nav-item">
<a class="nav-link active" href="{{route('default.index')}}">{{ __('Dashbord') }}</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">{{ __('Posts') }}</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">{{ __('Tags') }}</a>
</li>
<li class="nav-item">
<a class="nav-link " href="#">{{ __('Files') }}</a>
</li>
</ul>
{% endraw %}
在</head>
前添加@yield(‘styles’),在</body>
前添加@yield(‘scripts’),创建样式以及脚本模块,后续在视图文件中添加样式和js脚本
效果
访问 http://127.0.0.1:8000/admin/default
可以看到以下内容
本教程代码下载
更多内容关注公众号 “写PHP的老王”
- 为or、in平反——or、in到底能不能利用索引?
- BP神经网络续1
- 隐藏在程序旮旯中的“安全问题”
- SQLSERVER 占了500多M内存,原来的程序无法一次查询出50多W数据了,记录下这个问题的解决过程。
- 能自己“跑”的表单控件,思路,雏形,源码。vs2005版本
- 在SQLMAP中使用动态SQL
- 使用OQL“语言”构造ORM实体类的复杂查询条件
- AdoHelper使用MySQL存储过程示例
- 使用8位字节的编码格式将字节流安全的转换成String
- 同样的SQL语句在查询分析器执行很快,但是网站上执行超时的诡异问题
- PDF.NET数据开发框架操作MySQL实体类操作实例
- 使用PDF.NET数据开发框架的实体操作语言OQL构造复杂查询条件
- 鲶鱼CMS存储XSS漏洞披露
- 【分享】 纯 js 表单控件 —— 让 “增改查” 更轻松!
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 用 Shader 写个完美的波浪~
- K8s上的Go服务怎么扩容、发版更新、回滚、平滑重启?教你用Deployment全搞定!
- 图解Go内存管理器的内存分配策略
- why哥这里有一道Dubbo高频面试题,请查收。
- 「容器平台」Kubernetes网络策略101
- 架构师之路 - 服务器硬件扫盲
- 零基础Python教程045期 元组的增删改查测试实验
- 零基础Python教程044期 列表的函数方法,很耐用!
- 零基础Python教程047期 GUI窗体界面编程,迈出软件开发的第一步
- 零基础Python教程046期 矩阵行列互换算法,二维数组的典型应用
- 有一次小明传数据给我,把我弄哭了
- Java删除空字符:Java8 & Java11
- 6k+点赞的SpringBoot+Netty分布式即时通讯系统!爱了爱了!
- Day63:数据流中的中位数
- Prometheus是什么?