我使用的是Laravel 5.5。
我的目标是在同一个控制器上重定向到另一个方法,以显示包含数据的视图。
class SeancesController extends Controller {
...
public function getRecommandations(Request $request) {
...
$data = [
'recommandationAutresActiviteMemeDateHeure' => $recommandationAutresActiviteMemeDateHeure,
'recommandationsMemeActiviteMemeHeure' => $recommandationsMemeActiviteMemeHeure,
'recommandationsMemeActiviteMemeDate' => $recommandationsMemeActiviteMemeDate
];
return redirect()->action('SeancesController@showRecommandations', $data);
}
public function showRecommandations(Request $request) {
return view('listeRecommandations', $request->data);
}
}
这是正确的方法吗?因为我收到了这个错误:
InvalidArgumentException:未定义操作App \ Http \ Controllers \ SeancesController @ showRecommandations。在第338行的/home/nicolas/public_html/M1_CSI/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php文件中
我需要使用action
因为我使用ajax调用来访问getRecommandations()
。
我使用了这个文档:http://laraveldaily.com/all-about-redirects-in-laravel-5/。
我没有在路由文件中添加指向showRecommendations
的路由。这是一个问题吗?
感谢您的帮助!
答案 0 :(得分:1)
是的,这是一个问题。因为重定向器会检查分配给操作的路由,并将用户重定向到路由。我没有在路由文件中添加指向showRecommendations的路由。这是一个问题?