Laravel 4上的Blade模板引擎语法问题

时间:2012-12-31 13:33:49

标签: laravel laravel-4 blade

我目前正在开发一个关于Laravel 4

的测试版的项目

当我尝试使用模板引擎时,某些标签可以正常工作而有些标签则无效。 e.g:

@layout('layouts.master')
@section('container')
    <h1>About US</h1>
@endsection

显示为:

@layout('layouts.master')

About US

@endsection

表示解析@section标记,但另一个标记称为纯文本。 如果我将@layout更改为@include,也会包含模板。

有没有人遇到过类似的问题?是否有任何我不知道的语法更改?

3 个答案:

答案 0 :(得分:41)

在Laravel 4中,

@layout已更改为@extends。此外,@endsection已更改为@stop

答案 1 :(得分:1)

问题的根源在于很多在线教程(youtube和博客)仍在使用@layout和@endsection。这些教程通常也声称是Laravel4教程。

所以很多人都会从这个小陷阱开始他们的第一个Laravel4应用程序。

提示:我在开发时使用这个人的作弊表page(对Jesse O'Brien说道)。这就是我发现自己使用过时刀片标签的方式。

答案 2 :(得分:0)

如果您遇到Laravel的问题,或者如果您不知道Laravel是否内置了您需要的功能,那么请查看您使用的Laravel版本的文档。

当前发布版本的在线文档(撰写本文时为4):http://laravel.com/docs/

Laravel API 以在线方式深入了解来源,例如函数参数:http://laravel.com/api/