2. На 1 экране происходит формирование murkup данными из базы. При работе с MemoryStorage при переходе на 2 экран есть возможность положить markup в state и потом при возврате на 1 экран отрисовать закешированный markup. C RedisStorage такое не проходит, так как объект не сериализуется. С редисом такое не прокатит и надо заново дергать базу или все таки можно как-то оптимизировать такую ситуацию?
Храни данные, а не объекты
И потом пересобирать markup относительно закешированных данных?
ок, спасибо
Звучит интересно. А как логику делаешь на разные кнопки? Или они одинаковые по смыслу?
markup_data = markup.to_python() InlineKeyboardMarkup.to_object(markup_data)
Логика своя, на каждом экране свой текст и свои кнопки, при переходе по экранам изменяется текст сообщения и маркап в контексте последнего сообщения, получается красивый эффект. Сообщения не растут сверху вниз, а плавно меняются в текущем контексте.
Можетпригодится ) https://github.com/Tishka17/aiogram_dialog
Работает и контекст мессажки сохраняется, спасибо!
Обсуждают сегодня