Я хотел бы настроить algolia для поиска по нескольким индексам в Laravel, используя что-то простое, как это.
Route::get('/search/{query}', function ($query) {
$queries = [
[
'indexName' => 'movies_index',
'query' => $query,
'hitsPerPage' => 3
],
[
'indexName' => 'directors',
'query' => $query,
'hitsPerPage' => 3,
],
[
'indexName' => 'screenwriters',
'query' => $query,
'hitsPerPage' => 10
]
];
var_dump($queries);});
Но я новичок в Laravel и Algolia, так что я не совсем уверен, как это сделать.
В соответствии с Алголия Документы состояния:
// perform 3 queries in a single API call:
// - 1st query targets index `categories`
// - 2nd and 3rd queries target index `products`
$queries = [
[
'indexName' => 'categories',
'query' => $myQueryString,
'hitsPerPage' => 3
],
[
'indexName' => 'products',
'query' => $myQueryString,
'hitsPerPage' => 3,
'facetFilters' => 'promotion'
],
[
'indexName' => 'products',
'query' => $myQueryString,
'hitsPerPage' => 10
]
];
$results = $client->multipleQueries($queries);
var_dump($results['results']);
Не забудьте инициализировать ваш $client
первый:
$client = new \AlgoliaSearch\Client('APP_ID', 'APP_KEY');
Других решений пока нет …