【问题标题】:Laravel/Scout/Algolia search by id/index/objectIDLaravel/Scout/Algolia 按 id/index/objectID 搜索
【发布时间】:2017-04-30 02:36:14
【问题描述】:

我需要能够使用 algolia 按 id/index/objectID 进行搜索。所以订阅者 id 1829 我需要有人能够将其输入到搜索栏中,然后 1829 就会出现。

直接使用 Algolia 也不起作用,所以首先这是否可行,其次如果可以,您如何设置。

如果这不可能,我将不得不创建一个单独的搜索,这不是问题,只是烦人。

【问题讨论】:

    标签: laravel algolia


    【解决方案1】:

    您可以让 ObjectId 以最高优先级搜索,因此当您搜索 id 时,第一个元素应该是具有该 id 的元素。

    【讨论】:

      【解决方案2】:

      如果你只想搜索objectID,你也可以这样:

      if (is_int($query)) {
          Model::search($query, function ($algolia, $query, $options) {
      
              $record = $algolia->getObject($query);
      
              return [
                  'nbHits' => 1,
                  'hits' => [$record],
              ];
          })->get();
      } else {
          Model::serach($query);
      }
      

      【讨论】:

        猜你喜欢
        • 2017-10-19
        • 2019-02-18
        • 2022-01-14
        • 2018-06-19
        • 2017-09-03
        • 2018-12-12
        • 1970-01-01
        • 2021-08-25
        • 1970-01-01
        相关资源
        最近更新 更多