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 ...
随机推荐
- 18 . Go之操作Mysql
安装mysql wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm yum -y localinstall ...
- javascript Array对象笔记
Array对象 利用new Array() var arr1=new Array(1,2) 注意 如果括号里面只有一个数字则表示的是数组的长度 检测是否是数组 ...
- C/C++陷阱与套路,当年就是折在这些地儿…
摘要:本文结合作者的工作经验和学习心得,对C++语言的一些高级特性,做了简单介绍:对一些常见的误解,做了解释澄清:对比较容易犯错的地方,做了归纳总结:希望借此能增进大家对C++语言了解,减少编程出错, ...
- MixNet:MixConv:Mixed Depthwise Convolution kernels
- subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
将anaconda环境下的 lib/python3.5/dist-packages/torch/utils/cpp_extension.py文件 将['ninja','-v']改成['ninja', ...
- XCTF-WEB-新手练习区(5-8)笔记
5:disabled_button X老师今天上课讲了前端知识,然后给了大家一个不能按的按钮,小宁惊奇地发现这个按钮按不下去,到底怎么才能按下去呢? 删除disable="" 字段 ...
- shell脚本的常用执行方式
1.sh+脚本的相对路径 [jinghang@hadoop101 datas]$ sh helloworld.sh helloworld sh+脚本的绝对路径 [jinghang@hadoop101 ...
- 详解 LSTM
LSTM 长短时记忆网络(Long Short Term Memory Network, LSTM),是一种改进之后的循环神经网络,可以解决RNN无法处理长距离的依赖的问题,目前比较流行. 长短时记忆 ...
- Java—Map接口中的常用方法
Map接口与Collection接口的区别 Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储. Map中的集合,元素是成对存在的(理解为夫妻).每 ...
- 2020-04-22:谈谈JDK1.8下的HashMap在并发情况下链表成环的过程。(挖)
福哥答案2020-04-22: jdk1.8下的hashmap采用的是尾插法,不会有链表成环的问题.jdk1.7下采用的头插***有链表成环的问题. hashmap成环原因的代码出现在transfer ...