Ответ 1
@layout
был изменен на @extends
в Laravel 4. Кроме того, @endsection
был изменен на @stop
В настоящее время я запускаю проект в бета-версии Laravel 4
Когда я пытаюсь использовать механизм шаблонов, некоторые теги работают, а некоторые - нет. например:
@layout('layouts.master')
@section('container')
<h1>About US</h1>
@endsection
отображается как:
@layout('layouts.master')
About US
@endsection
что означает, что тег @section
анализируется, а другой называется простым текстом.
также, если я изменяю @layout
на @include
, он включает шаблон.
Кто-нибудь сталкивается с подобной проблемой? Были ли какие-либо изменения синтаксиса, о которых я не знаю?
@layout
был изменен на @extends
в Laravel 4. Кроме того, @endsection
был изменен на @stop
Источником проблемы является то, что много обучающих онлайн (youtube и blogs) по-прежнему используют @layout и @endsection. И эти учебные пособия обычно утверждают, что это также учебники Laravel4.
Так много людей попадают в эту маленькую ловушку, начиная свое первое приложение Laravel4.
Совет. Я использую этот чит-лист этого парня page при разработке (продвигает Джесси О'Брайен). Как я узнал сам, я использовал устаревшие метки.
Если вы столкнулись с проблемами с Laravel или, если вы не знаете, построил ли Laravel необходимую вам функциональность, всегда проверяйте документы для используемой вами версии Laravel.
онлайн-документация текущей выпущенной версии (4 на момент написания): http://laravel.com/docs/
и API Laravel, чтобы погрузиться в источник онлайн с объяснением, например. аргументы функции: http://laravel.com/api/