加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – 搜索结果的分页laravel 5.3

发布时间:2020-12-14 19:49:25 所属栏目:大数据 来源:网络整理
导读:分页搜索结果 我刚刚开始使用Laravel,我正在尝试使用适当的分页来创建搜索功能.该功能适用??于第一页,但第二页则不适用.我认为它不会将结果提供给下一页,但我似乎无法找到答案. 这是我在IndexController中的搜索功能: public function search(){ $q = Input
分页搜索结果

我刚刚开始使用Laravel,我正在尝试使用适当的分页来创建搜索功能.该功能适用??于第一页,但第二页则不适用.我认为它不会将结果提供给下一页,但我似乎无法找到答案.

这是我在IndexController中的搜索功能:

public function search()
{
    $q = Input::get('search');

    # going to next page is not working yet
    $product = Product::where('naam','LIKE','%' . $q . '%')
        ->orWhere('beschrijving','%' . $q . '%')
        ->paginate(6);

    return view('pages.index',compact('product'));
}

这是我的路线:

Route::post('search{page?}','IndexController@search');

这是第二页的网址:

/search?page=2

这是我展示我的分页的方式:

{{ $product->appends(Request::get('page'))->links()}}

错误:

MethodNotAllowedHttpException in RouteCollection.php line 218:

根据要求获取错误.

路线:

Route::get('search/{page?}','IndexController@search');

错误:

MethodNotAllowedHttpException in RouteCollection.php line 218:
in RouteCollection.php line 218
at RouteCollection->methodNotAllowed(array('GET','HEAD')) in RouteCollection.php line 205
at RouteCollection->getRouteForMethods(object(Request),array('GET','HEAD')) in RouteCollection.php line 158
at RouteCollection->match(object(Request)) in Router.php line 780
at Router->findRoute(object(Request)) in Router.php line 610
at Router->dispatchToRoute(object(Request)) in Router.php line 596
at Router->dispatch(object(Request)) in Kernel.php line 267
at Kernel->IlluminateFoundationHttp{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->IlluminateRouting{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
at CheckForMaintenanceMode->handle(object(Request),object(Closure)) in Pipeline.php line 137
at Pipeline->IlluminatePipeline{closure}(object(Request)) in Pipeline.php line 33
at Pipeline->IlluminateRouting{closure}(object(Request)) in Pipeline.php line 104
at Pipeline->then(object(Closure)) in Kernel.php line 149
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
at Kernel->handle(object(Request)) in index.php line 53

我希望我的问题清楚,格式正确.提前谢谢(抱歉我的英文不好)

回答:

我最后使用这篇文章的答案结合this帖子的一些帮助

我使用post函数进行初始搜索,并使用get函数进行后续页面.这是可能的,因为我现在正在搜索URL.

编辑:

>添加了初始错误.
>添加了Route :: get错误
>补充说明

如果要将过滤器应用于下一页,则应将它们添加到您的分页器中,如下所示:
$product = Product::where('naam','%' . $q . '%')
        ->paginate(6);
$product->appends(['search' => $q]);

并改变你的路线从post到get:

Route::get('search','IndexController@search');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读