Как передать названия шаблона через роут laravel?

Route::get('equipment', 'Equip@allitems');
Route::get('/', 'Equip@allitems');

public function allitems(){
        return view('здесь нужно передать название шаблона', 
            [
                'all' => $this->eqs(),
                'types' => $this->types()
            ]);
    }


Нужно передать название view методу allitems
  • Вопрос задан
  • 173 просмотра
Решения вопроса 1
kimono
@kimono
Web developer
Route::get('/', 'Equip@allItems');
Route::get('equipment', 'Equip@allEquipmentItems');


private function allItemsInternal(string $template){
    return view($template, [
        'all' => $this->eqs(),
        'types' => $this->types()
    ]);
}

public function allItems(){
    return $this->allItemsInternal('all');
}

public function allEquipmentItems(){
    return $this->allItemsInternal('equipment');
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
nazartertyshny
@nazartertyshny
Govnocoder
Что-то в таком духе. Не проверял, поэтому могут быть ошибки.

Route::get('{view}', 'Equip@allItems');

public function allItems($view){
		try {    
			return view($view);
		} catch (\Exception $e) {
			return 'Page not found';
		}
	}
Ответ написан
solotony
@solotony
code for food, caviar preferably
в контроллере узнай роут Route::currentRouteName();
а зная роут выбирай шаблон
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 февр. 2020, в 04:53
2000 руб./за проект
19 февр. 2020, в 02:24
500 руб./за проект
18 февр. 2020, в 23:53
8000 руб./за проект