У меня есть Elasticsearch::Model
на ActiveRecord::Base
модели, которая выглядит как этотОценки по ближайшему матчу в Elasticsearch
class ArtistGroup < ActiveRecord::Base
include Elasticsearch::Model
include Elasticsearch::Model::Callbacks
FT_REDIS_KEY = "agft"
has_many :artists
settings index: { number_of_shards: 5 } do
mappings dynamic: 'false' do
indexes :normalized_name, analyzer: 'english'
indexes :name, analyzer: 'english'
end
end
def as_indexed_json(options={})
as_json(only: ['normalized_name', 'id', 'name'])
end
....
Когда я поиск по .search('haim')
Я хочу, чтобы этот документ с названием: «Хаим», который будет возвращен первым перед другими, как «Даниэль Хаим из Хаима», как я могу контролировать ES-запрос, чтобы забить ближайший матч?