搜索

首页  >  问答  >  正文

在laravel中使用了搜索的第三方包,不知怎么给搜索的结果来分页?

我的问题是想给搜索结果分页,但是laravel的分页是基于Elouqent以及数据库查询构建器实现的,不知道给怎么在控制器和前端视图中怎么实现。

这是进行数据库搜索的代码:

$article = Searchy::companys('title','body')->query($request->seek)->get();

还请大神指点指点。

伊谢尔伦伊谢尔伦2789 天前546

全部回复(3)我来回复

  • ringa_lee

    ringa_lee2017-05-16 16:53:28

        public function all(Request $request)
        {
            $user = User::latest()->get();
            foreach ( $user as $key=>$value){
                $company = Company::find($value->company_id);
                $title = CompanyTitle::find($value->title_id);
                $value['titleName'] = $title->title;
                $value['companyName'] = $company->name;
            }
            $size = 8;
            if (empty($request->page)){
                $page = 1;
            }
            else{
                $page = $request->page;
            }
            $users = $user->toArray();
            $item = array_slice($users, ($page - 1) * $size,$size);
            $arr =new LengthAwarePaginator($item, count($user), $size, $page, [
                'path' => Paginator::resolveCurrentPath(),  //注释2
                'pageName' => 'page',
            ]);
            return $arr;
        }

    这是我自己看了一篇博客,解决了没有实例化没有链接的问题,写打代码,页码哪里没做处理,不是好代码。。。
    博客地址Laravel 手动分页实现

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 16:53:28

    Use Iluminatepagniate or lengthawaredpagniate.

    然后 new Paginate() 要到手册上查一下传入参数

    回复
    0
  • 为情所困

    为情所困2017-05-16 16:53:28

    你不用get啊,在query后面直接pagination

    回复
    0
  • 取消回复