Или так, да
Тогда return await handler(event, data) ругается на Expected type 'Update', got 'Message' instead
Тип у handler тоже надо поменять. Сделать Callable[[Message, ...]
Смотри, я стараюсь держать сигнатуру максимально близкой к исходной, а уже внутри уточнять, что мидлварь чисто для мессаджа
Если ты вешаешь мидлварь на router.message, то тип события там никак не Update
TelegramObject, ага
Исходная это какая? И почему TelegramObject? В хендлерах тогда тоже TelegramObject
https://docs.aiogram.dev/en/dev-3.x/dispatcher/middlewares.html Я вот тут смотрю
Указывается тип в зависимости от того на какое событие вешается мидлварь
Окей, а если у тебя мидлварь на Message и CallbackQuery одновременно?
Union[Message, CallbackQuery] и isinstance проверка внутри. Эту проверку понимают тайпчекеры и касты не нужны. Но я бы посмотрел, что именно ты делаешь в этих мидлварях.
Обсуждают сегодня