laravel5学习并搭建网站【更新至2020-09-03】
之前一直不清楚 php artisan 要如何使用,有朋友推荐使用phpstorm可以进行命令行执行,
现在发现其实如果真的不喜欢phpstorm的加载缓慢,可以试试计算机原有的命令行
记住需要跳转到项目根目录下喔
不断学习才能不断进步,在今后的一段时间里开启laravel的学习。由于之前一直使用thinkphp,从未真正使用过laravel。如有不足之处还望指出。
这次学习看了很多有官方的,也有其他各博主发布的一些见解
官方的,如果要详细学习 个人推荐 https://xueyuanjun.com/books/laravel-tutorial
这些包括我这里实践的都是laravel5的版本
安装laravel
1 打开cmd 跳转到需要安装的目录 通过composer 安装 laravel 安装器
composer global require "laravel/installer"
2 通过 Composer 的 create-project 命令来安装(建立名为blog的新应用)
composer create-project --prefer-dist laravel/laravel blog
或者可以指定版本号安装
composer create-project --prefer-dist laravel/laravel blog2 5.5.*
3 查看laravel版本
php artisan --version
创建控制器
php artisan make:controller AbaseController
php artisan make:controller Admin/IndexController
关于后台登录
创建控制器
php artisan make:controller Admin/IndexController
namespace App\Http\Controllers\Admin; use Illuminate\Http\Request;
use App\Http\Controllers\Controller; class IndexController extends Controller
{
//首页
public function index()
{ }
//登录
public function login()
{ }
}
由于后台管理属于web,为了省事直接将路由放置在web路由中
地址:routes/web.php
这里写个完整的直接看与理解吧,在路由完整的情况下看控制器与中间件之前的关系
Route::prefix('admin')->group(function () {
//登录
Route::get('index/login', function () {
return view('admin/index/login');
})->name('admin_login'); Route::middleware('check.login')->group(function () {
//首页
Route::get('/',function(){
echo '首页';
// return view('admin/index/index');
});
});
});
注释:
1 prefix('admin') 相当于前缀 或者说指定模型
2 name('admin_login') 设置别名 方便查找
3 middleware(‘check.login') 绑定中间件,并进行路由分组处理相关链接
添加一个问题项:关于后台路由首页设置,昨天测试的时候还没有问题,今天再去请求就发现行不通,也没有错误日志记录产生。
为此,重新设置了后台首页的路由,放置在 admin 分组 之外。
Route::get('houtai',function(){
// echo '后台首页';
return view('admin/index/index');
})->middleware('check.login');
关于中间件 check.login
首先在 app/Http/Middleware 目录下生成中间件 并简单的进行cookie 与 session 判定,在不存在的情况下跳转指定路由
PHP artisan make:middleware CheckLogin
public function handle($request, Closure $next)
{
$admin_id=$request->cookie('admin_id');
if(!$admin_id && !$request->session()->get('admin_id'))
{
return redirect()->route('admin_login');
} return $next($request);
}
注册中间件 CheckLogin 分配到指定路由中
app/Http/Kernel.php文件中,找到$routeMiddleware
添加'check.login' => \App\Http\Middleware\CheckLogin::class,
laravel5学习并搭建网站【更新至2020-09-03】的更多相关文章
- RPI学习--环境搭建_更新firmware
(用以解决USB摄像头不识别的状况) rpi-update是老外开发的一个更新树莓派firmware的工具 $ sudo apt-get update $ sudo apt-get install ...
- javaweb学习总结十七(web应用组织结构、web.xml作用以及配置虚拟主机搭建网站)
一:web应用组织结构 1:web应用组成结构 2:安装web组成机构手动创建一个web应用程序目录 a:在webapps下创建目录web b:在web目录下创建html.jsp.css.js.WEB ...
- Spring+SpringMVC+MyBatis深入学习及搭建(十)——MyBatis逆向工程
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6973266.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(九)--My ...
- Spring+SpringMVC+MyBatis深入学习及搭建(十六)——SpringMVC注解开发(高级篇)
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7085268.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十五)——S ...
- 深度学习之PyTorch实战(1)——基础学习及搭建环境
最近在学习PyTorch框架,买了一本<深度学习之PyTorch实战计算机视觉>,从学习开始,小编会整理学习笔记,并博客记录,希望自己好好学完这本书,最后能熟练应用此框架. PyTorch ...
- 基于开源博客系统(mblog)搭建网站
基于开源博客系统(mblog)搭建网站 上一章讲了基于jpress部署的博客系统,这一章了解一下 mblog这个开源的基于springboot的博客系统,相比与jpress 的热度fork数量要少一些 ...
- 【服务器】CentOs7系统使用宝塔面板搭建网站,有FTP配置(保姆式教程)
内容繁多,请耐心跟着流程走,在过程中遇到问题请在下面留言(我只是小白,请专业人士喷轻点). 这次用thinkphp5.1做演示,单纯的做演示,我打算下一篇文章用typecho(博客框架)演示. 前言 ...
- Spring+SpringMVC+MyBatis深入学习及搭建(八)——MyBatis查询缓存
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6956206.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(七)——My ...
- Spring+SpringMVC+MyBatis深入学习及搭建(十五)——SpringMVC注解开发(基础篇)
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7065294.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十四)--S ...
随机推荐
- synchronized 锁的原理
synchronized 的基本认识 在多线程并发编程中 synchronized 一直是元老级角色,很 多人都会称呼它为重量级锁.但是,随着 Java SE 1.6 对 synchronized 进 ...
- 仅需1秒!搞定100万行数据:超强Python数据分析利器
前言 使用Python进行大数据分析变得越来越流行.这一切都要从NumPy开始,它也是今天我们在推文介绍工具背后支持的模块之一. 2 Vaex Vaex是 一种更快.更安全.总体上更方便的方法,可以使 ...
- NIO(二):Channel通道
一.Channel概述 channel(通道):进行IO的连接通道,为NIO的几个核心(Buffer,selector,channel)之一,相比于IO的stream具有较高的性能. IO 单向传输 ...
- JS笔记 语法
javascript概述 简称为JS,是一款能够运行在JS解释器.引擎中的脚本语言 JS解释器.引擎 JS的运行环境 1.独立安装的js解释器 -nodeJS 2.嵌入在浏览器中的js解释器 JS基于 ...
- 微信公众号里放XLS链接
微信公众号里放XLS链接 我们都知道创建一个微信公众号在公众号中发布一些文章是非常简单的,但公众号添加附件下载的功能却被限制,如今可以使用小程序“微附件”进行在公众号中添加附件,如:xls,word等 ...
- Nginx配置SSL证书,提高网络安全性
首先区别Http与Https HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高 ...
- Django中的异常
DJango除了会抛出Python的标准异常外还有一些框架自带的异常. 1. Django核心异常 在django.core.exceptions中:| ObjectDoesNotExist | Fi ...
- C#LeetCode刷题之#707-设计链表(Design Linked List)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4118 访问. 设计链表的实现.您可以选择使用单链表或双链表.单链 ...
- C#LeetCode刷题之#500-键盘行(Keyboard Row)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3796 访问. 给定一个单词列表,只返回可以使用在键盘同一行的字母 ...
- 使用Prometheus监控Golang服务-基于YoyoGo框架
Prometheus Prometheus是一个非常棒的工具,结合grafana能够让我在不写代码,或者少写代码的情况下搭建一套有效的监控体系.这里介绍一下Prometheus监控golang程序的方 ...