laravelasticsearch搜索和分页结果

vxf3dgd4  于 2021-06-13  发布在  ElasticSearch
关注(0)|答案(2)|浏览(297)

我在laravel中安装了elasticsearch,需要获得10个以上的结果并对它们进行分页。我无法得到什么应该是代码在拉维得到想要的结果。下面是我的邮政编码

Route::post('search', 'Api\ProductController@search');

搜索帖子请求代码:

public function search(Request $request){

      $searchresult =  Product::search($request->input('search'))->get();
      return $searchresult;

}
mpgws1up

mpgws1up1#

我可以增加结果从10到任何我想在'大小'领域。我仍然停留在如何我可以分页,以便用户可以滚动应用程序中的结果,更多的结果显示类似于正常分页

$client = ClientBuilder::create()->build();

          $params = $client->search([  
          "index"=> "products",

          "type" => "App\\Models\\Product",

          'body' => [
            "size" => 100,
              'query'=> [
                  'match'=>[
                      'name' => $request->input('search'),                       
                  ]
              ]
          ]
        ]);

        $result = $params['hits']['hits'];
       return $result;
ar7v8xwq

ar7v8xwq2#

根据elasticquent(elasticsearch for eloquent laravel models),要获得10个以上的结果(这是elasticsearch中的默认值),您可以使用基于查询的搜索功能: public static function searchByQuery($query = null, $aggregations = null, $sourceFields = null, $limit = null, $offset = null, $sort = null) 这个 $limit 参数是您要查找的参数(要返回的记录数)。

相关问题