Laravel 4では、コントローラーはブレードレイアウトを使用しています。
class PagesController extends BaseController {
protected $layout = 'layouts.master';
}
マスターレイアウトには変数titleが出力され、ビューが表示されます。
...
<title>{{ $title }}</title>
...
@yield('content')
....
ただし、私のコントローラーでは、変数をサブビューに渡すことしかできず、レイアウトを渡すことができないようです。たとえば、アクションは次のようになります。
public function index()
{
$this->layout->content = View::make('pages/index', array('title' => 'Home page'));
}
これにより、$title
変数はビューのコンテンツセクションにのみ渡されます。その変数をビュー全体、または少なくともマスターレイアウトに提供するにはどうすればよいですか?
@component('alert', ['foo' => 'bar'])
......