我的控制器(主页)中有以下操作
public function action_test($keyword)
{
echo $keyword;
}
当我传递没有空格的参数时,它可以正常工作,如下所示
http://localhost/laravel/home/test/apple
但是当我使用空格传递参数时,它会产生404错误,如下所示
http://localhost/laravel/home/test/green apple
当空间被编码时它甚至不起作用
http://localhost/shop/public/home/test/green+apple
甚至不是这个
http://localhost/shop/public/home/test/green%20apple
任何人都可以帮助我
答案 0 :(得分:2)
使用(:all)而不是(:any)注册您的路线。
来自Laravel文档:
您的路线可能如下所示:
Route::get('home/test/(:all?)', 'home@test');
Laravel论坛here中有关该主题的更多信息。
答案 1 :(得分:1)
我不知道这种行为背后的想法,但是(:any),(:number)和(:any?)不会带空格的字符串。如果您想将字符串传递给路线,则应使用(:all)。
答案 2 :(得分:-1)
http://www.laravel.com/docs/routing#controller-routing 您必须注册控制器的路线,例如: 路线::控制器( '家'); 并检查您的控制器类名是Home_Controller,还扩展Controller或Base_Controller类。