【发布时间】:2017-04-30 02:36:14
【问题描述】:
我需要能够使用 algolia 按 id/index/objectID 进行搜索。所以订阅者 id 1829 我需要有人能够将其输入到搜索栏中,然后 1829 就会出现。
直接使用 Algolia 也不起作用,所以首先这是否可行,其次如果可以,您如何设置。
如果这不可能,我将不得不创建一个单独的搜索,这不是问题,只是烦人。
【问题讨论】:
我需要能够使用 algolia 按 id/index/objectID 进行搜索。所以订阅者 id 1829 我需要有人能够将其输入到搜索栏中,然后 1829 就会出现。
直接使用 Algolia 也不起作用,所以首先这是否可行,其次如果可以,您如何设置。
如果这不可能,我将不得不创建一个单独的搜索,这不是问题,只是烦人。
【问题讨论】:
您可以让 ObjectId 以最高优先级搜索,因此当您搜索 id 时,第一个元素应该是具有该 id 的元素。
【讨论】:
如果你只想搜索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);
}
【讨论】: