@bmc41

Как определять город в проекте?

Добрый день, я планирую сделать чат-бот по типу доски объявлений.

Есть 2 основных флоу:

  • Поиск объявления по названию (пользователь вводит ручками название города и получает список существующих объявлений)
  • Добавление объявлений (пользователь опять вводит название города и добавляет объявление.

Я честно говоря не пойму, как правильно организовать такую логику где пользователь вводит название города.

У меня есть несколько вариантов:

1 вариант:

При добавлении объявления (флоу 1) - использовать api. т.е получается такой путь

Пользователь вводит название города (ошибки в грамматики также должны обрабатываться)
Уходит запрос по api/
На выходе получаем название города, страну, координаты или id города (в зависимости от того что отдает api)
Далее сохраняем все в бд (название города, страна, id города)

При поиске объявления (флоу 2) - также используем api
  • Пользователь вводит название
  • Уходит запрос к api
  • На выходе получает id города
  • Метчит все объявления с этим id
  • И выдает листинг с объявлениями.

2 вариант:

Заранее заготовить в БД список всех городов
А при вводе название города пользователем просто искать в бд на соответствие, но в таком случае будет проблема с обработкой ошибок.

Очень много сервисов работает по такому типу, например Авито, Циан и т.д
Подскажите пожалуйста какой вариант лучше выбрать? Или может отказать от обоих вариантов и сделать что-то другое? Заранее благодарю за помощь!
  • Вопрос задан
  • 25 просмотров
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
Пользователь вводит название города (ошибки в грамматики также должны обрабатываться)

вот тут - по первым буквам выпадающий список городов и выбор только из него
список - твой или из стороннего API - как больше нравится
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы