Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 07.08.2019 11:37:36

Доступ к View вне Контроллеров

Добрый день, начал изучать Laravel (v5.5), при размещении логики в контроллерах, все более менее понятно. Хотел передать формирование ответа (то есть данные для представления) в отдельный класс Output, чтобы была возможность подмены реализации при обращении разных клиентов. Не могу понять как обращаться к View вне контроллеров:
return view('album.album') или
$app = app(); $app['view']->make('album.album');
не дает вывод в браузер (пустой экран).
Причем что странно, если в индексном методе контроллера
return view('album.album') нормально работает,
то если упаковываешь строку return view('album.album');
в метод этого же контроллера допустим getView();
и вызываешь в индексном методе $this->getView() то вывода в браузере нет (пустой экран).
Делал artisan view:clear эффекта нет.
View::exists('album.album') вызываемая в Output->getView() дает TRUE (то есть фасад View доступен и проблема с blade-шаблонизатором?).

Изменено AlexanderA (07.08.2019 12:10:35)

Не в сети

#2 07.08.2019 12:34:07

Re: Доступ к View вне Контроллеров

то если упаковываешь строку return view('album.album'); в метод этого же контроллера допустим getView();и вызываешь в индексном методе $this->getView() то вывода в браузере нет (пустой экран).

return возвращает значение, в данном случае - объект типа вью.

надо не просто вызвать свой кастомный метод, но и потом вернуть то, что он тебе дал smile

в методе-экшене контроллера, т.е. например в

public function index()
{
$view = $this->getView(); // а он делает return view(...)
...
return $view;
}

Не в сети

#3 07.08.2019 12:55:31

Re: Доступ к View вне Контроллеров

Спасибо, протупил )

Не в сети

Подвал раздела