我们在开发项目的时候,视图的布局往往都是拥有一个统一的模版的,我们不可能在每张页面都去写上相同布局的代码,我们可以建立一个layout.blade.php
的视图文件,将基础布局写在这里,然后让别的视图文件都来继承它。
现在打开项目,先查看下route.php
和PagesController.php
文件中的内容:
route.php中如下:
<?php
Route::get('/', 'PagesController@home');
Route::get('about', 'PagesController@about');
将PagesController.php中修改如下:
<?php
namespace App\Http\Controllers;
class PagesController extends Controller
{
public function home()
{
$users = ['Zhoujiping', 'Kuker Chou'];
return view('welcome', compact('users'));
}
public function about()
{
return view('about');
}
}
在resources/views/
下建立layout.blade.php的文件,输入以下内容:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>布局文件</title>
</head>
<body>
@yield('content')
</body>
</html>
然后将welcome.blade.php
代码改成如下:
@extends('layout')
@section('content')
<h1>这里是welcome.balde.php的页面</h1>
@stop
我们让所有的视图通过@extends('布局文件的名称')
去继承布局文件,通过@section()
去覆写@yield
就可以了,看下效果
ok, 这节就这样.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。