我开始使用4.2中的Laravel 5.1,我对控制器中布局的定义有疑问。
在4.2我有这个:
private $layout = 'layouts.master';
public function showWelcome()
{
$this->layout->content = View::make('home');
}
加载视图时," Home"视图将显示在" master.blade.php"的@yield('section')
中在layouts文件夹中。
我在5.1中搜索了如何使用它,我发现layout.masters的分配已被删除,但我无法在任何地方看到新用法。
现在我已经5.1了:
namespace App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use View;
class HomeController extends BaseController
{
public function showWelcome()
{
return view('home');
}
}
如何向showWelcome()
函数说明它必须在视图中产生内容?
答案 0 :(得分:3)
在Laravel 5.1中,您可以在顶部 @extends('layouts.master')中的刀片文件中扩展主布局。 From Laravel 5.1 Documentation
<!-- Stored in resources/views/child.blade.php -->
@extends('layouts.master')
@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