Я пишу бота для выполнения тестов. Когда я запускаю бота через консоль и проверяю работу, то на первый вопрос он отвечает правильно, при этом если я сразу же после перезагрузки запущу второй вопрос, то он уже не будет работать верно, считая что я ввожу неправильное слово.
#@dp.message_handler(commands=['check_yourself'])
async def knowledge_check(message: types.Message):
await bot.send_message(message.from_user.id, f"Давай проверим твои знания, {message.from_user.full_name}", reply_markup=cy_client)
await bot.send_message(message.from_user.id, f'{message.from_user.full_name}, выбери слово, стоящее в правильной форме.')
#Вводим команду для выполнения первого задания
@dp.message_handler(commands=['Первое_задание'])
async def answer_check1(message: types.Message):
await bot.send_message(message.from_user.id, f'обгрыза(е)нное яблоко', reply_markup=a1_client)
#Пользователь вводит ответ, далее ответ проверяется ботом
@dp.message_handler()
async def ans_ch1(message: types.Message, state : FSMContext):
if 'обгрызенное' in message.text:
#Если ответ верен, то бот выводит...
await bot.send_message(message.from_user.id, f'Абсолютно верно! {message.text}')
await state.finish()
await bot.send_message(message.from_user.id, f'Возвращаюсь к заданиям', reply_markup=cy_client)
else:
#Если ответ неверен, то бот выводит...
await bot.send_message(message.from_user.id, f'К сожалению, это неправильный ответ :( {message.text}')
await state.finish()
await bot.send_message(message.from_user.id, f'Возвращаюсь к заданиям', reply_markup=cy_client)
#Аналогичный код для второг задания
@dp.message_handler(commands=['Второе_задание'])
async def answer_check2(message: types.Message):
await bot.send_message(message.from_user.id, f'косвенных падежей(ов)', reply_markup=a2_client)
@dp.message_handler()
async def ans_ch2(msg: types.Message, state : FSMContext):
if 'падежей' in msg.text:
await bot.send_message(message.from_user.id, f'Абсолютно верно! {msg.text}')
await state.finish()
await bot.send_message(message.from_user.id, f'Возвращаюсь к заданиям', reply_markup=cy_client)
else:
await bot.send_message(message.from_user.id, f'К сожалению, это неправильный ответ :( {msg.text}')
await state.finish()
await bot.send_message(message.from_user.id, f'Возвращаюсь к заданиям', reply_markup=cy_client)
Что нужно добавить в код, для нормальной работы бота?