0
Answered

Убрать из подсказок по городу всякие гск, тер, снт и прочие «населенные пункты» внутри города

Андрей Гурьянов 1 year ago updated 8 months ago 6

Для расчёта стоимости доставки от пользователя требуется указать либо город либо населенный пункт в привычном понимании (деревня, село, сельское поселение и тд). То есть, к примеру, чтобы пользователь мог указать как город Ижевск, так и деревню Гавриловка.

Использую пример https://codepen.io/dadata/pen/aOxzVg?editors=1010 (с bounds: "city-settlement")

Ввожу "Ижевск" и мне выдает в подсказке множество "гск" - выглядит довольно некрасиво. Никто ведь не использует понятие "гск" как некий населенный пункт внутри города. Я могу на стороне клиента убрать из подсказки лишнее при помощи модификации примера https://codepen.io/dadata/pen/dMXbrY, но это, по моему, тоже не очень красиво - сервер выдает ограниченное количество подсказок, и если все они с "гск" (как в примере про Ижевск) - то получится что подсказок по сути нет, хотя в РФ существуют и село Ижевское, и посёлок Ижевский, и другие.

Можно ли как-то указать в настройках плагина, чтобы сервер не отдавал в подсказках населенные пункты внутри города, но при этом отдавал обычные населенные пункты - деревни, сёла, сельские поселения и тд.?

сервис: подсказки справочник: адреса

Answer

Answer

Да, вы правы — это из-за геолокации. Можно отключить её для поля выбора населённого пункта — для этого добавьте при инициализации параметр geoLocation = false:

$city.suggestions({
  token: token,
  type: type,
  hint: false,
  bounds: "city-settlement",
  geoLocation: false
});

Подойдёт такой вариант?

Under review

Массово убрать типы нельзя, но «гск» не должны вылезать вперёд «нормальных» населённых пунктов. Вот как выглядит выдача в примере для меня:



А как у вас, можете дать скриншот?

У меня в примере вот так:

Я нахожусь как раз в Ижевске, возможно геолокация так влияет.

Answer

Да, вы правы — это из-за геолокации. Можно отключить её для поля выбора населённого пункта — для этого добавьте при инициализации параметр geoLocation = false:

$city.suggestions({
  token: token,
  type: type,
  hint: false,
  bounds: "city-settlement",
  geoLocation: false
});

Подойдёт такой вариант?

Подниму этот вопрос. Бесят гск. 

Может введете дополнительный параметр, типа exclude-crap? :-)

Выключение геолокации поднимает город выше, но гск остаются в списке.