Laravel: 从子文件夹扩展 parent 文件夹中的文件

Laravel: extend a file in parent folder from subfolder

我想扩展位于 views\backend 文件夹中的 master.blade.php。

view/backend/master.blade.php <--我想扩展这个文件

view/backend/partials/header.blade.php <--将扩展 master.blade.php

的文件

文件夹结构

我在 header.blade.php 文件中尝试过,但失败了:

@extends('backend.master')

已编辑 master.blade.php

<body>
    <div class="wrapper">
        @yield('header')
        @yield('sidebar')
        @yield('content')
        @yield('footer')
    </div>
  </body>

header.blade.php

@extends('backend.master')

@section('header')
<p> this is the header</p>
@endsection

该页面仅在浏览器中显示主要内容

通常 headerfootersidebar 包含跨页面通用的标记。只有内容因页面而异。

此外,扩展 master 布局的概念是为了避免在各个页面之间重复共享部分。使用 @yield('header') @yield('footer') @yield('sidebar') 破坏了扩展 master 布局的概念。因为所有这些部分都需要包含在所有页面上。

所以你的主布局应该是这样的

<body>
    <div class="wrapper">
        @include('backend.partials.header')
        @include('backend.partials.sidebar')
        @yield('content')
        @include('backend.partials.footer')
    </div>
</body>

然后对于任何页面,您都可以将 master 布局扩展为

@extends('backend.master')

@section('content')

<!-- content markup here -->

@endsection