刀片模板未显示部分

时间:2014-07-14 15:21:04

标签: php laravel blade

我有这三个刀片模板

在我的控制器中,我正在调用仪表板视图:

View::make('layouts.dashboard');

master.blade.php

<?= stylesheet_link_tag() ?>
<?= javascript_include_tag() ?>

<html>
<body class="fixed">

    <div class="wrapper">
        <div class="leftside">
            @yield('leftside', 'left-side content')
        </div>
        <div class="rightside">
            @yield('rightside', 'right-side content')       
        </div>   
    </div>

</body>

dashboard.blade.php

@extends('layouts.master')

@section('leftside')
    @yield('sidebar', 'sidebar content')
@stop

sidebar.blade.php

@extends('layouts.dashboard')

@section('sidebar')
  aaa
@stop

dasbhoard刀片在主刀片中正确显示,但侧边刀片不希望显示。有谁知道我做错了什么?

非常感谢您的帮助:)

2 个答案:

答案 0 :(得分:1)

我不认为你可以在未调用的刀片模板上使用yield()。

基本上你可以做的是将你的 master.blade.php 纳入

<html>
<body class="fixed">
    <div class="wrapper">
        <div class="leftside">
            @include('sidebar') {{-- This is sidebar.blade.php --}}
        </div>
        <div class="rightside">
            @include('dashboard') {{-- This is dashboard.blade.php --}}      
        </div>   
    </div>
</body>
</html>

然后,假设您正在调用 dashboard.blade.php 模板,同时包含两个刀片模板。您可以使用master.blade上的部分或dashboard.blade中的sidebar.blade

@extends('layouts.master')

{{-- You can define now the sections available on master.blade and dashbard.blade --}}

答案 1 :(得分:0)

好的我发现了什么问题:)

我调用了View :: make(&#39; layouts.dashboard&#39;)而不是 View :: make(&#39; layouts.sidebar&#39;);