Спасибо большое за видео и качественный разбор . Продолжайте в том же духе !
@Lehan1117 ай бұрын
Ещё слышал про команды в связке с евент драйвен, есть ли они здесь?
@bonessnap8 ай бұрын
где-то я уже видел такое руководство
@valentino-sm Жыл бұрын
callable это функция для проверки что объект Callable. В тайпхинтингах это то же самое что сделать вместо Any - any
@Lehan1117 ай бұрын
А где этот main с register handler будет в фастапи например? А в ручках апи, юз кейсах?
@НектоСударь2 жыл бұрын
Найс разбор. Качественные пояснения
@ДаниилСоловьев-э6ш2 жыл бұрын
Когда только начал смотреть видео, подумал, что логику с отправкой email вынесут вообще в отдельное выполнение, как с Celery. А тут оказалось в другом смысл. Не слышал о такой штуке раньше, возьму на заметку. Действительно удобно и абстрактно)
@al.e.k2 жыл бұрын
Название видео действительно наводит на мысль, что тут будет нечто масштабное, хотя по сути разобран паттерн Observer.
@xxnn6742 жыл бұрын
А как передать в dispatch различные аргументы для разных функций?
@PythononPapyrusRU2 жыл бұрын
Можно все собирать в словаре data, либо через args и kwargs, а оттуда уже брать что нужно. Но вообще лучше сделать так чтобы сам event в себе нес все нужные данные
@xxnn6742 жыл бұрын
@@PythononPapyrusRU Спасибо за обратную связь, разобрался
@vrabosh2 жыл бұрын
От вашей задачи зависит, можно доп данные так передавать reg_hendlers("name_hend", func, args) и словарь расширить с функцие и аргументами.
@VitaliyStepnoFF Жыл бұрын
Ещё как вариант NamedTuple/dataclass. По сути это какой-то DTO между эвентами с известным интерфейсом (например, для сравнения: какой интерфейс у словаря?). Попробуйте так Ещё можно сделать в БД новую табличку UserRegisteredEvents, а в dipatch просто передавать id эвента. Тогда вы сможете сделать soft realtime на очередях и так далее, но это уже фантазия...
@user-bot-asds2 жыл бұрын
Explicit is better than implicit! А тут получается что мы можем оставить кучу пустых вызовов в коде без ошибок, но при этом чтоб удостовериться что они действительно "пустые" нужно чуть ли не в дебаггере неймспейсы просматривать
@PythononPapyrusRU2 жыл бұрын
Я про это в конце сказал
@david_shiko2 жыл бұрын
Прикольно, но почему словарь, а не класс "event_register" или events.register? Тогда и параметры можно будет нормально передавать.
@YntymakPlay2 жыл бұрын
Потому что это простой пример реализации ивентов, для учебного примера усложнения ни к чему
@david_shiko2 жыл бұрын
@@YntymakPlay имхо, нужно сразу правильный пример показывать. Говорю как человек, который проходил все это.