laravel 搜索输入 Get 而不是 Post
laravel search input Get instead of Post
Blade:
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>
</form>
JS:
$('#search').click(function () {
$('#search').hide();
$("#search_field").animate({
width: 'toggle'
});
})
$('.form').click(function () {
$('.submit_form').submit();
})
Laravel:
Route::post('search', 'SearchController@search')->name('search');
因此,如果我按下图标,它就会越过 post 路线。
但是,如果我在输入中写了一些东西并按下回车键,它就会越过获取路径。
我应该怎么做才能让它在 post 路线的各个方向上行驶?
也许在您的 routes/web.php 文件中存在与该操作相同的 URL 获取路径?路由是按照从上到下的顺序执行的,所以必须把post路由放在get路由之前。
像这样
Route::post('/search', 'yourcontroller@store');
Route::get('/search', 'yourcontroller@index');
或
确保将表单标签中的 POST 方法大写
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="POST" action="{{route('search')}}">
已解决:
我必须在我的表单中实现 {{ csrf_field() }}
。
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
{{ csrf_field() }}
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>
Blade:
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>
</form>
JS:
$('#search').click(function () {
$('#search').hide();
$("#search_field").animate({
width: 'toggle'
});
})
$('.form').click(function () {
$('.submit_form').submit();
})
Laravel:
Route::post('search', 'SearchController@search')->name('search');
因此,如果我按下图标,它就会越过 post 路线。 但是,如果我在输入中写了一些东西并按下回车键,它就会越过获取路径。
我应该怎么做才能让它在 post 路线的各个方向上行驶?
也许在您的 routes/web.php 文件中存在与该操作相同的 URL 获取路径?路由是按照从上到下的顺序执行的,所以必须把post路由放在get路由之前。 像这样
Route::post('/search', 'yourcontroller@store');
Route::get('/search', 'yourcontroller@index');
或 确保将表单标签中的 POST 方法大写
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="POST" action="{{route('search')}}">
已解决:
我必须在我的表单中实现 {{ csrf_field() }}
。
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
{{ csrf_field() }}
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>