Php Laravel 4.2-搜索栏的路线不工作
我已经在Php Laravel 4.2-搜索栏的路线不工作,php,laravel-4,laravel-routing,Php,Laravel 4,Laravel Routing,我已经在blade模板中创建了表单。此表单将POST请求发送到search.postQuery,以便我可以获取搜索查询,然后对其进行处理并返回视图 这是我定义的路线: Route::post('/search/{query}', ['as' => 'search.postQuery', 'uses' => 'SearchController@postQuery'])->where('query', '[a-zA-Z0-9]+'); 我的表单如下所示: {{ Form::ope
blade
模板中创建了表单
。此表单将POST
请求发送到search.postQuery
,以便我可以获取搜索查询,然后对其进行处理并返回视图
这是我定义的路线:
Route::post('/search/{query}', ['as' => 'search.postQuery', 'uses' => 'SearchController@postQuery'])->where('query', '[a-zA-Z0-9]+');
我的表单如下所示:
{{ Form::open(array('method' => 'POST', 'route' => array('search.postQuery')) }}
{{ Form::text('searchQuery') }}
{{ Form::submit('Zoeken!') }}
{{ Form::close() }}
这是路由在POST
上调用的方法:
public function postQuery($query)
{
var_dump("Landed here");
}
最后,Laravel给我带来的错误是NotFoundHttpException
。
当我按下submit时,我还发现Laravel正在构建一个相当奇怪的URL:http://homestead.app/search/%7Bquery%7D
我做错了什么?就我所知,我没有做什么奇怪的事?这是你的错误
{{ Form::open(array('route'=>'search.postQuery','method' => 'POST')) }}
{{ Form::text('searchQuery') }}
{{ Form::submit('Zoeken!') }}
{{ Form::close() }}
不幸的是,您的解决方案并没有解决我的错误。发送时,URL的格式也很奇怪:http://homestead.app/search/%7Bquery%7D
您是否尝试过像route::post('/search/{query}',这样更改路线SearchController@postQuery'); 删除其他参数,看看happensIt现在在做什么!它降落到postQuery
中的var_转储。我现在只剩下一个问题,那就是如何获得显示searchQuery的URL,而不是第一条评论中的链接?编辑方法中的var_dumping参数$query
时,它会按字面意思响应{query}
。删除{query},因为它是post请求,并将路由保留为route::post('/search','SearchController@postQuery');. 然后尝试查看SearchController::postQuery()的缺少参数1,因此我猜Laravel现在缺少表单/路由/控制器之间的关系?