В настоящее время при поиске номеров ветвей, например, при поиске 051
, результат поиска показывает результат для номера ветки 051
, как и ожидалось. Для поиска с ведущими нулями я хочу, чтобы поиск branch_number
051 включал результаты для 051 and 51
, поиск branch_number 011
, чтобы получить результаты для 011 and 11
Вот моя текущая реализация
def full_text_options(query_string)
query = {
type: self.class.mapping_type,
body: {
query: {
bool: {
must: []
}
},
sort: [{ branch_number: 'asc' }]
}
}
filter_by_query(query, query_string)
query
end
def filter_by_query(query, query_string)
if query_string.present?
query[:body][:query][:bool][:must] << {
multi_match: {
query: query_string,
fields: [
'branch_number^3',
'state_province^2',
'city',
'postal_code'
],
type: 'phrase_prefix'
}
}
end
end