На aiogram2 делал так: @dp.message_handler(text=[' Админ панель'], state='*') Code @dp.message_handler(text=[' Админ панель'], state='*') На aiogram3 не понимаю как это можно сделать @router.callback_query(F.data == 'back_to_profile', StateFilter('*')) Code @router.callback_query(F.data == 'back_to_profile', StateFilter('*')) пытался так, но ничего не получись
шобы сделать хендлер, реагирующий на любое состояние ты не юзаешь statefilter('*'), как в aiogran 2. вместо этого юзай фильтр statefilter() без аргументов
противоположник, ┌──(.venv)─(reques6e㉿kali)-[~/*********/GitHub/***seller] └─$ /home/reques6e/*********/GitHub/***seller/.venv/bin/python /home/reques6e/*********/GitHub/***seller/src/main.py Traceback (most recent call last): File "/home/reques6e/*********/GitHub/***seller/src/main.py", line 5, in <module> from bot.handlers.client import router as router_client File "/home/reques6e/*********/GitHub/***seller/src/bot/handlers/client.py", line 60, in <module> @router.callback_query(F.data == 'back_to_profile', StateFilter()) ~~~~~~~~~~~^^ File "/home/reques6e/*********/GitHub/***seller/.venv/lib/python3.13/site-packages/aiogram/filters/state.py", line 20, in __init__ raise ValueError("At least one state is required") ValueError: At least one state is required Code ┌──(.venv)─(reques6e㉿kali)-[~/*********/GitHub/***seller] └─$ /home/reques6e/*********/GitHub/***seller/.venv/bin/python /home/reques6e/*********/GitHub/***seller/src/main.py Traceback (most recent call last): File "/home/reques6e/*********/GitHub/***seller/src/main.py", line 5, in <module> from bot.handlers.client import router as router_client File "/home/reques6e/*********/GitHub/***seller/src/bot/handlers/client.py", line 60, in <module> @router.callback_query(F.data == 'back_to_profile', StateFilter()) ~~~~~~~~~~~^^ File "/home/reques6e/*********/GitHub/***seller/.venv/lib/python3.13/site-packages/aiogram/filters/state.py", line 20, in __init__ raise ValueError("At least one state is required") ValueError: At least one state is required ошибку даёт
IFearNobody, пушо установлена альфа или бета версия aiogram 3.x, где statefilter() без аргументов ещё не поддерживается
router.callback_query(F.data == 'back_to_profile') просто пиши вот так и все хандлеры которые должны быть приоритетнее хандлеров с фильтром по конкретному стейту, должны объявляться первее в коде