Добрый день, у меня есть вопрос И мне нужен практический ответ в коде, пожалуйста.У меня есть две таблицы «Заказы и местоположения». Я хочу сделать запрос, например, «Нью-йоркский мяч», и хочу получать все запросы с мячом из таблицы заказов, местоположение которой составляет 23 (Нью-Йорк)
.this
$mapping = [
'index' =>'elastic',
'type'=>'order',
'body'=>[
'properties'=>[
'item_name' => [
'type' => 'text',
'analyzer' => "ngram_analyzer_with_filter",
],
'order_description' => [
'type' => 'text',
'analyzer' => "ngram_analyzer_with_filter",
],
'id' => [
'type' => 'text',
'analyzer' => "ngram_analyzer_with_filter",
],
'notes' => [
'type' => 'text',
'analyzer' => "ngram_analyzer_with_filter",
]
]
]
];
А также есть построитель запросов, подобный этому
$items = $this->search->search([
'index' => 'elastic',
'type' => 'order',
'body'=>[
'query'=>[
"multi_match"=>[
"fields"=>["item_name^5","location^4","order_description^3","notes^2"],
"query"=>$query
]
],
"highlight" => [
"pre_tags" => "<b style='color:#da4f49'>",
"post_tags" => "</b>",
"fields" => [
"item_name" => new \stdClass(),
"order_description"=> new \stdClass(),
"id" => new \stdClass(),
"notes" => new \stdClass()
]
]]]
);
Пожалуйста, предоставьте мне код, который может помочь мне, пожалуйста, пришлите мне код, потому что я не понимаю эту тему навсе это и мне очень сложно понять что-то кроме кода.Спасибо всем, когда я пытаюсь создать отображение индекса, как это
"location_name"=> [
"type"=> "join",
"relations"=>
["location"=> "order" ]
]
Я получаю сообщение об ошибке Нет обработчика для типа [join] объявлен в поле [location_id] "}]