Задать вопрос
@DarkiDeuce

Как очистить поле shipping_query.shipping_address.city при отправлении invoice сообщения?

После отправления invoice сообщения пользователь в графе "Город" может указать город, который не соответствует условию кода, из-за чего дальнейший код не будет выполнен. А окно для заполнения информации о заказе не будет загружаться (как при последующей попытке открыть окно, так и в действующий момент). Как при открытии пользователем invoice сообщения очистить графу с указанием адреса? И сообщить пользователю о том, что доставка в данный город невозможна?

Кусок кода:
@dp.shipping_query_handler(lambda query: True)
async def process_shipping_query(shipping_query:types.ShippingQuery):
    shipping_options = []

    if shipping_query.shipping_address.city == ' ':
        shipping_options.append(courier_delivery_in_1)
        shipping_options.append(pickup)

    elif shipping_query.shipping_address.city == ' ':
        shipping_options.append(courier_delivery_in_2)
        shipping_options.append(pickup)
        
    await bot.answer_shipping_query(shipping_query.id,
                                    ok=True,
                                    shipping_options=shipping_options)
  • Вопрос задан
  • 29 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@DarkiDeuce Автор вопроса
Вопрос решил. Вот код:
if shipping_query.shipping_address.city == ' ':
    shipping_options.append(courier_delivery_in_1)
    shipping_options.append(pickup)

elif shipping_query.shipping_address.city == ' ':
    shipping_options.append(courier_delivery_in_2)
    shipping_options.append(pickup)
else:
    return await bot.answer_shipping_query(
            shipping_query.id,
            ok=False,
            error_message='Доставка возможна только в другие города')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы