Я создаю сайт для дилеров автомобилей. И я пытаюсь использовать elasticsearch для моего поиска. Но я не понимаю отношения в поиске elastics. i Cars
, Car_Options
, Brand
, City
столы. Я храню некоторые метаданные в таблице Car_Options
. Обычно в MySQL мои таблицы нравится:Elasticsearch Отношения на Laravel
Car Table :
id , name , brand_id , price , city_id
Car_Options Table :
id , car_id , name , value
Brand Table :
id , name
City Table :
id , name
я пытался использовать этот пакет для elasticsearch: iverberk/larasearch. Я могу индексировать мою таблицу Cars (Model), и я могу выполнить поиск в этой таблице. Но я не мог понять, как получать связанные данные из других таблиц. Я читал об отношениях на elasticsearch, но я не мог его реализовать. Некоторые из них рассказывают об индексировании их в один документ. некоторые из них рассказывают о пути родителя/ребенка. Итак, моя проблема заключается в том, что я не понимаю, как индексировать отношения по эластичному поиску и как их искать.
i индексированные автомобили и ссылки, чтобы попытаться, но я не смог достичь истинного результата. я сделал несколько попыток, как:
return Car::search('NewYork', ['fields' => ['city.name']])->getResults();
Ожидание справки о логике! каким образом я должен следовать? как я должен индексировать их отношениями?
Спасибо!
У меня есть табло, стол города, таблица car_properties. они слишком много:/и я обычно использую таблицу mysql, как можно индексировать эту 4 таблицу в один документ? –