2015-08-11 4 views
2

Использование RESTful контроллеров ресурсов позволяет мне это сделать:Заменить параметр маршрута для отправки

$request = Request::create(route('api.v1.booking.show'), 'GET'); 

И декодированное генерироваться URL является:

http://example.app/api/v1/booking/{booking} 

Я знаю, что я мог бы выдать запрос GET и разрешить параметр вызывая

Route::get($request, function($booking) { 
    return $some_id; 
}); 

Но в моем случае, я хочу, чтобы направить запрос, используя способ доставки:

return Route::dispatch($request); 

Я не могу понять, как разрешить параметр при вызове метода dispatch, так как он не принимает Closure, как метод get делает.

Помимо использования PHP str_replace, существует ли способ Laravel для этого?

+0

я не уверен Я понимаю. Вы спрашиваете, как установить значение параметра $ booking в запросе, который затем передается в Route :: dispatch()? –

+0

Метод отправки перенаправляет запрос на URL-адрес, указанный мной в вопросе, и мне нужно заменить местозаполнитель '{booking}' на определенный идентификатор. Это описано на сайте Laravel: http://laravel.com/docs/5.0/routing#route-parameters для получения запросов. – clapas

ответ

1

Для того, чтобы установить значение {бронирования} параметра маршрута, вам нужно передать массив параметров маршрута в качестве второго аргумента маршрута():

$request = Request::create(
    route('api.v1.booking.show', ['booking' => $bookingId]), 
'GET' 
); 
Смежные вопросы