laravel基础课程---4、Laravel基础网站结构搭建
laravel基础课程---4、Laravel基础网站结构搭建
一、总结
一句话总结:
1、搭建网站前后台路由:在路由组Route::group()中设置好命名空间和前缀
2、搭建控制器:比如1)新建Admin目录,存放后台控制器;2)新建Home目录,存放前台控制器
3、搭建页面:在resources的views中创建我们的我们需要的页面即可
前后台路由
// 前台路由
Route::group(['namespace'=>'Home'],function(){
// 前台首页
Route::get('/',"IndexController@index");
}); // 后台路由
// 通过路由组 提取公共命名空间 公共的前缀
Route::group(['namespace'=>'Admin','prefix'=>'admin'],function(){
// 后台首页
Route::get('/','IndexController@index');
// 后台用户管理模块
Route::resource('user','UserController');
// 后台商品管理模块
Route::resource('goods','GoodsController');
});
后台控制器:根据路由的需要创建控制器(以后台为例 需要修改命名空间)
IndexController.php namespace App\Http\Controllers\Admin; use Illuminate\Http\Request; use App\Http\Controllers\Controller;
use DB; // 后台首页控制器
class IndexController extends Controller
{
// 后台首页方法 public function index(){
echo "我是后台首页";
}
}
引入页面:在对应控制器中reture view()
1、后台首页控制器
public function index(){
// 引入页面
return view('admin.index');
}
1、通过路由提取 【公共命名空间】和【公共的前缀】分别对应的作用是什么?
【公共的前缀】相当于是加在文件路径前面的:比如prefix是admin,就相当于后台用户管理模块的文件为 admin/user
【公共命名空间】 相当于是加在控制器的前面:比如namespace是Admin,就相当于是用户管理模块的控制器为 Admin/UserController
|||-begin
// 后台路由
// 通过路由组 提取公共命名空间 公共的前缀
Route::group(['namespace'=>'Admin','prefix'=>'admin'],function(){
// 后台首页
Route::get('/','IndexController@index');
// 后台用户管理模块
Route::resource('user','UserController');
// 后台商品管理模块
Route::resource('goods','GoodsController');
});
|||-end
2、使用laravel搭建网站的前后台 需要管理的路由的文件位置是哪里?
routes下的web.php
(D:\laravel\yzmedu\yzm2\routes\web.php)
3、thinkphp中的处理和显示页面在一个函数中(比如修改操作和显示修改页面),laravel对应的呢?
laravel默认好像是分开的
<?php namespace App\Http\Controllers\Admin; use Illuminate\Http\Request; use App\Http\Controllers\Controller;
use DB; // 后台用户管理首页控制器
class UserController extends Controller
{
// 后台用户管理首页方法 public function index(){ // 加载用户管理页面
return view('admin.user.index');
} // 后台用户管理修改页面
public function edit(){
return view('admin.user.edit'); }
// 后台用户管理添加页面
public function create(){
return view('admin.user.create'); } // 添加操作
public function store(){ } // 修改操作
public function update(){ } // 删除操作
public function destory(){ } }
4、laravel的模板继承是什么样的?
存同写异:公共区域被提取出来【比如侧边栏,底部栏】,我们只需要在页面中继承,然后编写页面间不同的位置即可
在公共文件中弄好模板【比如sidebar和内容】:内容区域用@yield('content')占位,视图区块用 @section('sidebar') 来占位
子页面继承: @extends('layouts.app')
<!-- 文件保存于 resources/views/layouts/app.blade.php --> <html>
<head>
<title>应用程序名称 - @yield('title')</title>
</head>
<body>
@section('sidebar')
这是 master 的侧边栏。
@show <div class="container">
@yield('content')
</div>
</body>
</html>
子页面继承
<!-- Stored in resources/views/child.blade.php -->
@extends('layouts.app')
@section('title', 'Page Title')
@section('sidebar')
@parent
<p>This is appended to the master sidebar.</p>
@endsection
@section('content')
<p>This is my body content.</p>
@endsection
5、模板布局 的作用以及实例?
主要解决网站后台公共部分的修改
实例:建立模板文件(视图中)+ 替换占位符位置
0、主要解决网站后台公共部分的修改 1、需要在视图目录下新建muban模板 2、新建一个模板文件 admin.blade.php
<html>
<head>
</head>
<body>
#不一样的地方需要使用
@yield('main')
</body>
</html> 3、普通页面如何书写
#继承模板
@extends('muban.admin') #替换占位的内容
@section('main')
<!-- 内容 -->
<div class="col-md-10"> <div class="jumbotron">
<img src="/admins/img/4.jpg"height="310px" width="100%" alt="">
<h2>联想 后台管理系统</h2>
<p>开发者 : 赵丰泰</p>
</div>
</div> @endsection
6、中间件使用实例?
书写路由:Route::group(['namespace'=>'Admin','prefix'=>'admin','middleware'=>'adminLogin'],function(){
创建中间件:php artisan make:middleware adminLogin
注册中间件:在app的Http的kernel.php中
中间件作用:比如可以【判断用户是否登录,判断session中是否有数据】,和tp中我写在base基础控制器中的东西比较像
1、路由如何书写
// 通过路由组 提取公共命名空间 公共的前缀 中间件 Route::group(['namespace'=>'Admin','prefix'=>'admin','middleware'=>'adminLogin'],function(){ // 后台首页
Route::get('/','IndexController@index'); }); 2、如何新建中间件
php artisan make:middleware adminLogin 3、注册中间件(D:\laravel\yzmedu\yzm2\app\Http\kernel.php)
protected $routeMiddleware = [
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'adminLogin' => \App\Http\Middleware\AdminLogin::class,
]; 4、打开中间件(D:\laravel\yzmedu\yzm2\app\Http\Middleware\adminLogin.php)
二、内容在总结中
laravel基础课程---4、Laravel基础网站结构搭建的更多相关文章
- (大数据工程师学习路径)第四步 SQL基础课程----其他(基础练习到此为止)
一.准备 在正式开始本内容之前,需要先从github下载相关代码,搭建好一个名为mysql_shiyan的数据库(有三张表:department,employee,project),并向其中插入数据. ...
- 03_java基础(五)之项目结构搭建
1.结构图 2.dao代码编辑 package com.day01.station.dao; /** * Created by Administrator on 2018/2/1. */ public ...
- laravel基础课程---16、数据迁移(数据库迁移是什么)
laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...
- laravel基础课程---1、laravel安装及基础介绍(laravel如何安装)
laravel基础课程---1.laravel安装及基础介绍(laravel如何安装) 一.总结 一句话总结: [修改composer镜像地址].[明确laravel的安装要求].[安装指定版本的la ...
- laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)
laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...
- laravel基础课程---2、Laravel配置文件、路由及php artisan(php artisan是什么)
laravel基础课程---2.Laravel配置文件.路由及php artisan(php artisan是什么) 一.总结 一句话总结: PHP工具匠:php artisan,其实本身就是一些PH ...
- laravel基础课程---15、分页及验证码(lavarel分页效果如何实现)
laravel基础课程---15.分页及验证码(lavarel分页效果如何实现) 一.总结 一句话总结: 数据库的paginate方法:$data=\DB::table("user" ...
- laravel基础课程---14、表单验证(lavarel如何进行表单验证)
laravel基础课程---14.表单验证(lavarel如何进行表单验证) 一.总结 一句话总结: lavarel的验证的功能比tp要[简单]且[强大]很多 直接控制器中:添加[规则数组]和[修改提 ...
- laravel基础课程---13、数据库基本操作2(lavarel数据库操作和tp对比)
laravel基础课程---13.数据库基本操作2(lavarel数据库操作和tp对比) 一.总结 一句话总结: 非常非常接近:也是分为两大类,原生SQL 和 数据库链式操作 学习方法:使用时 多看手 ...
随机推荐
- 【LeetCode】Validate Binary Search Tree ——合法二叉树
[题目] Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defin ...
- ICON小工具如何使用
对于ICON这个小资源,我们可以手动绘制.选择bmp图形的大小,尤其是旁边的选择工具(矩形或者弧形),我们可以通过选择工具挪动我们手动绘制的图标,其实图标只有中间那部分有用,其他没有用.还有最右边色拾 ...
- 【Android】内存卡图片读取器,图库app
上一篇<[Android]读取sdcard卡上的全部图片而且显示,读取的过程有进度条显示>(点击打开链接)在真机上測试非常有问题.常常遇到内存溢出.卡死的情况.由于如今真机上的内存上,2G ...
- sql查字符串包含某字段查询
select * from dbo.V_AgreementMaterialQuery where '上海市' like '%'+SaleRange+'%' ‘上海市’>SaleRange(上海)
- CentOS 6.5语言包裁剪
https://www.ibm.com/developerworks/cn/linux/l-cn-linuxglb/ 浅析 Linux 的国际化与本地化机制 Linux 是一个国际化的操作系统,它的工 ...
- 有关SQL注入的知识
SQL注入攻击是非常令人讨厌的安全漏洞,是所有的web开发人员,不管是什么平台,技术,还是数据层,需要确信他们理解和防止的东西.不幸的是,开发人员往往不集中花点时间在这上面,以至他们的应用,更糟糕的是 ...
- python使用模板手记
1.首先是$符号 在webpy中,模板html里面可以写python代码,但要用$开始.但如果网页代码本来就有$符号(javascript或者正则表达式),我们需要对其进行转意.用$$代替$ 给jqu ...
- Python 字符串操作(截取/替换/查找/分割)
Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...
- 修改linux的hostname (修改linux系统的IP和hostname)
# vi /etc/sysconfig/networkNETWORKING=yesHOSTNAME=yourname //在这修改hostnameNISDOMAIN=eng-cn.platform.c ...
- winserver 资源下载
http://msdn.itellyou.cn/ 下载各种系统资源,支持迅雷下载,速度杠杠的