Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Не удается подключиться к движку Blade, чтобы включить раздел

Автор вопроса: DusanОтветов: 1

Я использую Laravel 4.2 и пытаюсь поиграть с Blade.

Итак, в /app/views/layouts/test.blade.php у меня есть

<html>
    <head>
        <title>TEST LAYOUT</title>
    </head>
    <body>
        <p>{{ date('d/m') }}</p>
        <p>
            @yield('content')
        </p>
    </body>
</html>

в /app/views/testView.blade.php есть

@secton('content')
    <p>{{ 'Hello World from section...' }}</p>
@stop

{{'Hi every one'}}

<p>It doesn't work :(</p>

И мой контроллер выглядит следующим образом:

class HomeController extends BaseController {

    protected $layout = 'layouts.test';

    public function index()
    {
        $this->layout->content = View::make('testView');
    }

}

Но окончательный вывод выглядит так:

Hi every one

<p>It doesn't work :(</p>
<html>
    <head>
        <title>TEST LAYOUT</title>
    </head>
    <body>
        <p>02/12</p>
        <p>
                    </p>
    </body>
</html>

Я также пробовал другой способ (без защищенного $layout в контроллере, но с @extends в testView.blade.php), но результат тот же. Что я делаю неправильно?

  • @section('content') => @section('content')? the Saint Genius 02.12.2014
  • Ха-ха-ха, спасибо, бро... Да, это так. Dusan 02.12.2014
  • Я просматривал несколько раз, прежде чем публиковать в StackOverflow, но действительно не видел этого. Dusan 02.12.2014
  • Бывает с лучшими из нас (: the Saint Genius 03.12.2014

phplaraveltemplatesblade

Ответы

Ответ 1 · Macaulay Babalola----Web Dev.

Вы неправильно назвали test.blade.php. Ваш /app/views/testView.blade.php должен выглядеть так

@extends('layouts/test)
@secton('content')
    <p>{{ 'Hello World from section...' }}</p>
@stop

{{'Hi every one'}}

<p>It now works :)</p>

Теперь это должно работать

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы