2013-09-06 6 views
0

Недавно началось изучение laravel4, и я экспериментирую с шаблонами клинков. По какой-то причине они работали, но внезапно они перестали работать, и когда я иду посмотреть сайт с указанным шаблоном, он просто показывает директиву @yield и не отображает раздел, который должен был быть.Базовый выход Laravel4 не работает?

< http://i.imgur.com/kf0fdjH.png - Скриншот источника при просмотре в браузере

Это весь код, я использую в настоящее время это мертвый основной материал

приложение/routes.php

//set base route 
Route::get('/', '[email protected]'); 

приложение/контроллеры/HomeController

<?php 

class HomeController extends BaseController { 

protected $layout = 'base'; 

public function index() 
{ 

    $data = array(
     'heading' => 'Hello Laravel (from Home)', 
     'body' => 'This is awesome, from the HomeController' 
    ); 

    $this->layout->content = View::make('test', $data); 
} 

} 

приложение/просмотров/base.php (шаблон макета HTML)

<!doctype html> 
<html> 
<head> 
<title>Something</title> 
</head> 
<body> 
    <div class="container"> 
     @yield('content') 
    </div> 
</body> 
</html> 

приложение/просмотров/test.blade.php

@section('content') 
<h1>{{ $heading }}</h1> 
<p>{{ $body }}</p> 
@stop 

Вот в значительной степени это я понятия не имею, почему его не отображается, когда Я просматриваю сайт. Это работало, а потом почему-то остановилось, и я понятия не имею, почему. Я даже попробовал новую установку laravel с теми же результатами.

ответ

1

Вам нужно добавить @extends к вашему test.blade.php и переименовать base.php на base.blade.php.

@extends('base') 
+0

Спасибо за быстрый ответ и да, просто добавив файл blade.php в базовый файл. Почувствуйте себя глупым. Спасибо за ответ! – jackthedev

Смежные вопросы