2013-02-25 2 views

답변

6

기본보기가있는 경우 해당보기의보기 구성 도구를 사용하여 메뉴를 전달할 수 있습니다. 그것은 다음과 같습니다

View::composer('layout', function($view) 
    { 
     $view->with($menu,Menu::get()); 
    }); 

이 언제든지 layout보기가 호출되어 있는지 확인합니다, $menu은 모델에 의해 반환되는대로 포함됩니다.

또한 Laravel은 View::share('foo',$bar)이며 모든보기에서 $foo에 액세스 할 수있게하고 $ bar와 동일하게 설정합니다. 따라서 단일보기가없는 경우 항상 $menu에 액세스 할 수 있도록이 기능을 사용할 수 있습니다.

상황에 따라 다른 것보다 더 좋을 수도 있습니다.

+0

감사합니다. 내 붙여 넣기 (http://paste.laravel.com/iM8)로 대답을 업데이트하십시오. 이것이 Laravel 4에서 수행하는 방법입니다. –

+0

그리고 다른 사람들은 이것을 Blade Layouts (http : //four.laravel.com/docs/templates), 마스터 템플릿 (master.blade.php)이 있고 다른 모든 (기본/페이지) 템플릿이이 마스터 템플릿을 확장합니다. 그래서 레이아웃 작곡가를 사용하여 데이터를이 마스터 템플릿과 모든 페이지에 넣을 수있었습니다. –