2015-05-28 2 views
0

я определил следующий маршрут:Laravel: (Как) можно ли ссылаться на именованный маршрут с параметром?

Route::get('/tours/{country_identifier}', ['as' => 'country', 'uses' => '[email protected]']); 

Теперь я хотел бы связать с этим именем маршрут, используя что-то вроде

route('country') 

с параметром для {country_identifier} заполняется, например '/ Туры/Канада.

Как я могу это сделать?

+0

попробовать Canada

ответ

2

Вы можете передать параметры как второй массив аргументов:

route('country', ['country_identifier' => $someValue]); 

вы посмотрите на documentation может, есть много полезных примеров там :)

+1

Всех хороших ответов, но вы были первым :) Я не нашел такой пример в документации, хотя, может быть, но я пропустил это .. – Pim

+0

Я тоже не нашел это в ваших документах. Я видел это в учебнике Джеффри Пути о Формах. –

+0

@MichaelObi вы можете увидеть [ссылку на класс] (http://laravel.com/api/5.0/Illuminate/Contracts/Routing/UrlGenerator.html#method_route) все, что вам нужно знать о любом методе и его параметрах:) – shaddy

1

Попробуйте

route('country', array('country_identifier' => 'Canada')) 

Для маршрута потребуется параметр canada.

2

Чтобы связать с использованием вида (если вы используете лезвие)

<a href="{{ URL::route('country', array('country_identifier' => $var)) }}">$var</a> 
1

Его простой:

Для одного звена

<a href="{{ route('country', ['country_identifier' => $country_id]) }}">$country_name</a> 

Если вы создаете некоторые ссылки, которые вы можете сделать например

@foreach($countries as $country) 
<a href="{{ route('country', ['country_identifier' => $country->id]) }}">$country->name</a> 
@endforeach 

NB: Где $countries является модель объекта передается для просмотра примера $countries = Country::all()

Смежные вопросы