2016-04-17 4 views
0

Учитывая следующий код, я просто хочу, чтобы второй маршрут отправил произвольное значение для id или любой другой переменной, к которой я могу получить доступ, в пределах show();Отправить параметр контроллеру через маршрут Laravel

Route::get('foo/{id}', '[email protected]')->where('id', '[0-9]+'); 
Route::get('bar', '[email protected]')->with('id', -1); // This pseudo-code doesn't work. I want to send parameter id with an arbitrary value 
+0

Вы можете просто хотите условному вызвать метод из ваш контроллер после проверки значения id –

+0

Но во втором маршруте, как я действительно отправляю значение id? – Gazzer

+0

Как переменная с нулевым значением {id?} –

ответ

1

Почему бы не так?

Маршруты:

Route::get('bar/{id?}', '[email protected]')->where('id', '[0-9]+'); 

Контроллер:

class FoobarController extends Controller{ 
    public function show($id){ 
     $id = $id ? $id : "default value"; 
    } 
} 

Или:

public function show($id="default value"){..} 
Смежные вопросы