Laravel 5 - 无法从 redirect::route 获取参数

Posted

技术标签:

【中文标题】Laravel 5 - 无法从 redirect::route 获取参数【英文标题】:Laravel 5 - can't get parameters from redirect::route 【发布时间】:2015-10-19 20:43:31 【问题描述】:

我在控制器中有这段代码:

$id = 1;
$name = 'Phil';
return Redirect::route('myroute')->with('id',$id)->with('name',$name);

然后在我的路线文件中,我有以下内容:

Route::get('test/id/name',array('as' => 'myroute', 'uses' => 'MyController@myFunction'));

最后是 MyController 中的函数:

 public myFunction($id,$name) 
        return $name;
 

我得到的是字符串“name”,而不是打印“Phil”的变量名的内容。

我做错了什么?

提前致谢

【问题讨论】:

【参考方案1】:

将路由参数作为第二个参数传递给 route():

return Redirect::route('myroute', ['id' => $id, 'name' => $name]);

->with() 将项目放入下一个请求的输入中,而不是作为路由参数。

【讨论】:

以上是关于Laravel 5 - 无法从 redirect::route 获取参数的主要内容,如果未能解决你的问题,请参考以下文章

laravel sentry redirect::intended 不工作

Laravel 使用来自控制器的参数重定向路由

如何在 laravel 5.4 中实现 HTTPS

Laravel 5.4:无法从关系中检索数据

无法将数据从刀片传递到 vue(Laravel 5.3)

Laravel - 使用 Redirect::route() 添加斜杠