if call.message:
? ну ее ж не буквально удалить надо было, а условие удалить. Вложенные условия почему-то остались. Где отдельная функция для создания клавиатуры? В общем пробуйте, тестируйте. @disp.message(ai.F.text == 'Начать игру' or ai.F.text == 'Следующий вопрос') # основной хендлер
async def start_game(message):
await message(f'Зимой и летом одним цветом?')
await message.answer('Варианты ответа: \n a)Ясень \n b)Ёлка \n c)Кедр', reply_markup = answer_btn) # клавиатура с кнопками ответов
@disp.message(ai.F.text)
async def check_answer(message):
if message.text == 'Следующий вопрос':
await start_game(message)
else:
result = check(message.text)
if result:
await message.answer('Верно!', reply_markup = next_question_keyboard) # клавиатура с кнопкой "Следующий вопрос"
else:
await message.answer(f'Неверно!', reply_markup = next_question_keyboard) # клавиатура с кнопкой "Следующий вопрос"
lazy="selectin"
, например. В итоге у вас вместе с DeviceModel подтягиваются и все остальные данные. Может данных очень много, а индексы не проставлены (хотя очень сомневаюсь в этом)