Есть ли способ обработки события ‘before make view’ для определенного контроллера в Laravel?
Я имею в виду, что перед созданием представления я хочу, чтобы каждое действие определенного контроллера было СУХОЙ.
Спасибо.
Вы можете использовать setupLayout
метод. Если вы используете BaseController
класс, который поставляется с установкой laravel по умолчанию. Он уже определен, и вы можете расширить или переопределить его.
BaseController (если вы используете это и хотите сделать это для каждого контроллера, выходящего из него)
protected function setupLayout()
{
if ( ! is_null($this->layout))
{
$this->layout = View::make($this->layout);
}
if(isset($this->sectionTitle)){ // just to be sure
View::share('sectionTitle', $this->sectionTitle);
}
}
Один из ваших контроллеров
protected function setupLayout()
{
if(isset($this->sectionTitle)){ // just to be sure
View::share('sectionTitle', $this->sectionTitle);
}
parent::setupLayout(); // add this if you're extending from a controller that has implemented the setupLayout() function
}
Других решений пока нет …