目前,无论出于何种原因,我网站上的几乎所有视图都会以错误的顺序生成网页。而不是首先生成app.blade.php,然后是相应页面的内容,它会在app.blade.php之前生成页面内容。
实施例
app.blade.php
<html>
<title></title>
<body>
some nav stuff
@yield('content')
</body>
</html>
somepage.blade.php
@extends('app')
@section('content')
<div>
some page's content
</div>
当页面生成时,您会收到如下来源:
<div>
some page's content
</div>
<html>
<title></title>
<body>
some nav stuff
</body>
</html>
有谁知道为什么大多数网页会像这样渲染和/或如何解决这个问题?截至目前,只有几页实际上以正确的顺序呈现(具有相同的@extends('app')
和@section('content')
),而所有其他页面都是这样渲染的。
感谢。
答案 0 :(得分:2)
您遗失了somepage.blade.php
中的一个关键字:
@stop
它应该位于您的刀片模板中每个@section
的末尾:
@extends('app')
@section('content')
<div>
some page's content
</div>
@stop
@section('footer')
<div>some footer content!</div>
@stop