Бот отправлял локацию текстом и записывал её в БД через ОРМ
Процесс работы бота следующий. При регистрации он запрашивает у пользователя геолокацию. Когда пользователь отправил геопозицию, бот получает широту и долготу и записывает их в переменные. Вопрос: как сделать так, чтобы бот расшифровывал их в текст (в город)? То есть на вход получает геопозицию пользователь, а при обработке получает город. Вот мой код:
@dp.message_handler(regexp='Зарегистрироваться')
async def reg_func(message: types.Message):
markup = types.reply_keyboard.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton('Отправить геолокацию', request_location=True)
btn2 = types.KeyboardButton('Отменить регистрацию')
markup.add(btn1, btn2)
await message.answer('Твой город нужен для того, чтобы мы могли подобрать наиболее удобные для тебя предложения\n'
'В твоём текущем городе!', reply_markup=markup)
@dp.message_handler(content_types=['location'])
async def send_geo(message: types.Message):
lat = message.location.latitude
lon = message.location.longitude
markup = await main_menu()
orm.add_user(message.from_user.id, message.from_user.first_name, message.from_user.username)
orm.add_profile(message.from_user.id)
await message.answer('Ты успешно зарегистрирован!', reply_markup=markup)
Что должно быть тут? Как научить бота обрабатывать полученную геопозицию?
Источник: Stack Overflow на русском