使用Laravel中的参数重定向到命名路由

时间:2014-08-26 08:08:10

标签: php laravel

我想重定向到已命名的路由,并且能够使用该路由中的参数。

这会有效,但我不想将路线指定为特定的字符串

return Redirect::to('admin/user/' . $id . '/edit')

我想使用路由名称,如下所示:

return Redirect::route('user/edit')

但这给了我错误:

Trying to get property of non-object

错误的路线:

admin/user/%7Bid%7D/edit

我已指定路线并在我的routes.php文件

中命名
Route::get('/admin/user/{id}/edit', array(
    'as' => 'user/edit',
    'uses' => 'UserController@edit'
));

1 个答案:

答案 0 :(得分:4)

您需要告诉重定向器您要替换的参数,或者它将使用您指定的“默认”:在这种情况下{id}%7B%7D分别是编码{}

return Redirect::route('user/edit', array($id));

方法args是:

public RedirectResponse route(string $route, array $parameters = array(), int $status = 302, array $headers = array())