0
Отвечен
Как задать приоритет регионов?
Использую REST API. Задал такие ограничения для locations:
[{ region: 'Санкт-Петербург' }, { region: 'Москва' }]
Ввожу "мира", хочу на первых позициях увидеть улицу Мира в Санкт-Петербурге, а вижу следующий список:
[{ region: 'Санкт-Петербург' }, { region: 'Москва' }]
Ввожу "мира", хочу на первых позициях увидеть улицу Мира в Санкт-Петербурге, а вижу следующий список:
- г Москва, пр-кт Мира
- г Москва, ул Мира
- г Санкт-Петербург, ул Мира
Ответ
На рассмотрении
А почему улица Мира в Санкт-Петербурге должна быть на первой позиции?
Смотрел вопрос https://dadata.userecho.com/topic/538601-zadavat-prioritetnyij-region-v-granulyarnyih-podskazkah-po-adresu/, в котором речь шла о том, что по умолчанию предпочтение в поисковой выдаче отдается пользовательскому городу, который был определен по IP-адресу. В случае же с ограничением поискового охвата несколькими регионами необходимость в указании приоритетного города (города пользователя) остается.
Например, моя компания оказывает услуги по отправке открыток от адреса до адреса. Доставка осуществляется в трех городах: Москва, Санкт-Петербург и Вологда. На сайте есть поля для указания адресов отправления и получения. В поле с адресом отправления чаще всего будут указывать собственный город, но при этом есть возможность указать адрес в другом городе. Город пользователя имеет наивысший приоритет.
В поле с адресом получения, к примеру, по статистике чаще всего могут указывать Москву. Москва - приоритетный город.
Не думаю, что это редкий юзкейс). Было бы логично задавать приоритеты упорядочиванием регионов в параметре locations или же использовать какой-нибудь другой способ
Например, моя компания оказывает услуги по отправке открыток от адреса до адреса. Доставка осуществляется в трех городах: Москва, Санкт-Петербург и Вологда. На сайте есть поля для указания адресов отправления и получения. В поле с адресом отправления чаще всего будут указывать собственный город, но при этом есть возможность указать адрес в другом городе. Город пользователя имеет наивысший приоритет.
В поле с адресом получения, к примеру, по статистике чаще всего могут указывать Москву. Москва - приоритетный город.
Не думаю, что это редкий юзкейс). Было бы логично задавать приоритеты упорядочиванием регионов в параметре locations или же использовать какой-нибудь другой способ
Ответ
Отвечен
Приоритетный для пользователя город определяется через геолокацию. Если человек находится в Питере, и вводит «Мира», он увидит «г Санкт-Петербург, ул Мира». Находится в Москве — получит «г Москва, пр-кт Мира». Это в jQuery-плагине.
Если работаете через REST, укажите приоритетный город в параметре
Если работаете через REST, укажите приоритетный город в параметре
locations_boost
:{ "locations_boost": [{"kladr_id": "78"}], "locations": [ {"region": "Санкт-Петербург"}, {"region": "Москва"} ], "query": "мира" }
Я описал другую ситуацию. Количество городов явно ограничено (в моем примере тремя городами). Плюс определять приоритетный город по геолокации не всегда уместно: город можно сменить на сайте, или в случае с полем указания адреса получения я хочу использовать самый популярный город. Поэтому вполне логично иметь возможность самому задать приоритетный город :)
Это похоже на правду) Параметр locations_boost в документации по REST API не описан
Смотрите выше пример с locations_boost: количество городов ограничено, явно задан приоритетный город.
Только я не понимаю, зачем вы хотите навязывать человеку самый «популярный» город Москву, если человек находится в Питере :–)
У меня в форме два поля с адресами: откуда и куда. В случае с полем "куда" желательно указывать город пользователя (если человек из Питера, то приоритет отдаем адресам Питера). А вот в поле "куда" хочется указывать адреса города, который наиболее популярен среди пользователей (в моем примере это Москва). Как-то так)
Да, надо уточнить, что доставка открытки в рамках одного города не осуществляется) Только межгород
Сервис поддержки клиентов работает на платформе UserEcho
Если работаете через REST, укажите приоритетный город в параметре
locations_boost
: