Laravel 5.6:POST 路由的分页在除第一个以外的所有链接上给出空白页
Laravel 5.6: Pagination for a POST route gives blank pages on all links except first
我有一个与 post 方法配合使用的搜索表单,但问题是分页链接不起作用。除第一页外,其他页面均为空白页。我在某处读到分页不适用于 POST
方法。
但是,当我更改我的表单并路由到 "get" 方法时,即使在第一页上我也会得到空白页。什么都没有显示。
这是我的路线
Route::get('reports/search','ReportsController@search');
这是我的表格
<form method="get" class="form-horizontal" action="{{action('ReportsController@search')}}">
<!-- {{csrf_field()}} used only with POST-->
<input type="text" name="search" id="search">
<button type="submit" class="btn btn-primary"> Submit</button>
</form>
这是我的控制器代码
public function search(Request $request)
{
$showData = sys_data::paginate(10);
return view('reports-data-view', compact('showData'));
}
问题是当我将表单和路由方法更改为 POST
时,它可以工作,但分页链接显示空白页。
当我将方法更改为 GET
时,它不起作用。我一点击提交按钮就显示空白页。
如有任何帮助,我们将不胜感激。提前致谢。
在您的表单中使用它
<form method="get" class="form-horizontal" action="{{url('reports/search')}}">
没关系,我想通了。
实际上,由于 GET link 是 /reports/search,请求将默认转到控制器的 "show($id)" 函数,因为它在 link 作为参数。
我所做的只是将路由更改为“/reports/search/view”,它开始工作并转到我的 ReportsController 中正确的自定义函数 "search()"。
我有一个与 post 方法配合使用的搜索表单,但问题是分页链接不起作用。除第一页外,其他页面均为空白页。我在某处读到分页不适用于 POST
方法。
但是,当我更改我的表单并路由到 "get" 方法时,即使在第一页上我也会得到空白页。什么都没有显示。
这是我的路线
Route::get('reports/search','ReportsController@search');
这是我的表格
<form method="get" class="form-horizontal" action="{{action('ReportsController@search')}}">
<!-- {{csrf_field()}} used only with POST-->
<input type="text" name="search" id="search">
<button type="submit" class="btn btn-primary"> Submit</button>
</form>
这是我的控制器代码
public function search(Request $request)
{
$showData = sys_data::paginate(10);
return view('reports-data-view', compact('showData'));
}
问题是当我将表单和路由方法更改为 POST
时,它可以工作,但分页链接显示空白页。
当我将方法更改为 GET
时,它不起作用。我一点击提交按钮就显示空白页。
如有任何帮助,我们将不胜感激。提前致谢。
在您的表单中使用它
<form method="get" class="form-horizontal" action="{{url('reports/search')}}">
没关系,我想通了。
实际上,由于 GET link 是 /reports/search,请求将默认转到控制器的 "show($id)" 函数,因为它在 link 作为参数。
我所做的只是将路由更改为“/reports/search/view”,它开始工作并转到我的 ReportsController 中正确的自定义函数 "search()"。