返回重定向()->动作('BookingController@index')laravel 8

Posted

技术标签:

【中文标题】返回重定向()->动作(\'BookingController@index\')laravel 8【英文标题】:return redirect()->action('BookingController@index') laravel 8返回重定向()->动作('BookingController@index')laravel 8 【发布时间】:2021-09-03 02:44:03 【问题描述】:

我正在学习使用旧版本 laravel 的教程,但我使用的是 Laravel 8 这行代码导致错误:

return redirect()->action('BookingController@index');

它在 BookingController.php 的 store 动作中, 这是错误的输出

Action BookingController@index not defined.

有人有想法吗?

提前致谢

【问题讨论】:

你可以试试redirect()->action('App\Http\Controllers\BookingController@index'); 谢谢@Espresso,它有效,您能否将其作为答案而不是评论,以便将其作为正确答案提交 现在实际上它已经在 Laravel 8 中改变了。return redirect()->action([HomeController::class, 'index']); check doc laravel.com/docs/8.x/redirects#redirecting-controller-actions 【参考方案1】:

Laravel 8 的早期版本中,RouteServiceProvider 类包含一个值为 App\Http\Controllers$namespace 属性。此属性的值用于自动为控制器路由声明和控制器路由 URL 生成添加前缀,例如在调用 action 助手时:

redirect()->action('App\Http\Controllers\BookingController@index');

见Upgrade Guide to Laravel 8.x (Automatic Controller Namespace Prefixing)

【讨论】:

以上是关于返回重定向()->动作('BookingController@index')laravel 8的主要内容,如果未能解决你的问题,请参考以下文章

基于动作的重定向 ASP.Net Core Razor

重定向到action,需要传递数据

从动作过滤器属性重定向

从一个区域的动作重定向到“根”区域中的动作?

在 Play 框架中重定向到同一控制器中的动作

如何重定向到同一控制器中的另一个动作?