@Wolfengo
Я ещё зелёный, сильно не душите

Как правильно использовать аналог next_step_handler в Aiogram?

Я использую рекурсивную функцию, которая записывает по очереди данные, после чего должна добавить заполненную категорию в базу данных.
async def compilate_info(message, category=None, name_product=None, description_product=None, price = 0):
            if not category:
                category = Form.take_all_info.set()
                print(category)
                await message.answer(f"Введите категорию продукции")
                await compilate_info(message, category=category)
            elif not name_product:
                name_product = Form.take_all_info.set()
                await message.answer(f"Введите название продукции")
                await compilate_info(message, category=category, product=name_product)
                print(name_product)
            elif not description_product:
                description_product = Form.take_all_info.set()
                await message.answer(f"Введите описание продукции")
                print(description_product)
            elif price == 0:
                new_price = Form.take_all_info.set()
                await message.answer(f"Введите стоимость продукции")
                new_price_int = sync_to_async(int)(new_price)
                price += new_price_int
                print(price)
            else:
                await message.answer('Продукция успешно добавлена!')


В чём мой вопрос:
category = Form.take_all_info.set()
На этом этапе бот не ожидает ввода с клавиатуры, а идёт дальше по списку. Как сделать так, чтобы бот ожидал ввода с клавиатуры?
Я делал подобное на TelegramBotAPI, но тут не получается...

Вот так выглядит функция к которой я обращаюсь:
@dp.message_handler(state=Form.take_all_info)
        async def process_info(message: types.Message, state: FSMContext):
            take_info = message.text
            await state.finish()


Мне главное, чтобы просто изменился message.text, с которым я буду работать
  • Вопрос задан
  • 52 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

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