MasterGroosha / aiogram-3-guide

Пишем Telegram-ботов с aiogram 3.x
https://mastergroosha.github.io/aiogram-3-guide/
MIT License
879 stars 135 forks source link

Обновить информацию по magic filter #69

Closed MasterGroosha closed 10 months ago

MasterGroosha commented 12 months ago

from aiogram.enums import MessageEntityType

Этот фильтр сработает, если хотя бы один entity будет e-mail:

@router.message(F.entities[...].type == MessageEntityType.EMAIL)
async def any_emails(message: Message):
    await message.answer("At least one email!")

Этот фильтр сработает, если ВСЕ entity будут e-mail:

@router.message(F.entities[:].type == MessageEntityType.EMAIL)
async def all_emails(message: Message):
    await message.answer("All entities are emails")

Плюс рассмотреть вариант с F.entities.extract(F.type == MessageEntityType.EMAIL).as_("emails")

MasterGroosha commented 10 months ago

Спасибо! Исправлено в https://github.com/MasterGroosha/aiogram-3-guide/pull/72