Size: a a a

2020 May 16

q

quavo in aiogram [ru]
.3gp
Это на подобии register_next_step в telebot'e?
Я хз
Но походу
источник

s

std::mpa in aiogram [ru]
Alex RootJunior
можно попробовать сделать роутер в виде контейнера, из которого при регистрации все хендлеры перенесутся в диспетчер (учесть невозможность регистрации хендлеров после подключения)
+
источник

AR

Alex RootJunior in aiogram [ru]
по моему это наиболее безболезненный вариант получится
источник

s

std::mpa in aiogram [ru]
Alex RootJunior
по моему это наиболее безболезненный вариант получится
без*? :)
простой уж точно
источник

AR

Alex RootJunior in aiogram [ru]
да х)
источник

VS

Victor Shatilov in aiogram [ru]
Игорь Середа
Что значит "импортировать в модули"?
Ты создаёшь объект. Дальше он у тебя используется в других сервисах, в которые ты его должен прокидывать через конструктор, если пишешь по-уму.

Что ты модулями называешь?
модуль - просто файл с задачами-функциями для celery...
источник

ИС

Игорь Середа... in aiogram [ru]
Victor Shatilov
модуль - просто файл с задачами-функциями для celery...
Ещё в процедурном стиле наверно, да?
источник

VS

Victor Shatilov in aiogram [ru]
Ага, она там одна единственная.
источник

ИС

Игорь Середа... in aiogram [ru]
Щас блюпринт тебе накидаю.
источник

ИС

Игорь Середа... in aiogram [ru]
Victor Shatilov
Ага, она там одна единственная.
https://pastebin.com/i3n7Qqw3

Чё-то такое ты хочешь написать.
источник

VS

Victor Shatilov in aiogram [ru]
Ну да, это хороший вариант, спасибо большое!
источник

q

quavo in aiogram [ru]
А зачем  двойное подчеркивание ....
источник

Т

Технопёс in aiogram [ru]
quavo
А зачем  двойное подчеркивание ....
Тоже не понял зачем тут защита от перекрытия при наследовании
источник

ИС

Игорь Середа... in aiogram [ru]
quavo
А зачем  двойное подчеркивание ....
Копипастил частично. У меня там приватные свойства были.
источник

q

quavo in aiogram [ru]
Приватненько
источник

q

quavo in aiogram [ru]
Вообще если хочется "защищённые" методы или атрибуты, то нужно одно подчёркивание
источник

ИС

Игорь Середа... in aiogram [ru]
Вообще, если хочется обозначить protected, то принято использовать одно подчёркивание.
источник

ИС

Игорь Середа... in aiogram [ru]
Вроде, это общедоступные знания.
источник

s

std::mpa in aiogram [ru]
Victor Shatilov
Ага, она там одна единственная.
как вариант, если хочешь глобальный диспетчер, занеси его в отдельный модуль, и отдельный модуль сделай входным.

—  [whatever/src]
   — bot
       — misc.py
       — entrypoint.py
       — handlers/

https://github.com/aiogram/bot/blob/01355d3b2ab2684d5d56485fbb63fe9d73eef083/app/misc.py#L19

зы: не претендует на лучшее решение, на одно из не самых лучших — вполне.

и ознакомься с aiogram/bot. он актуален для 2.x
источник

Т

Технопёс in aiogram [ru]
Victor Shatilov
чуваки, можете подсказать, вот есть у меня main.py там определён dp = Dispatcher(..), как его правильно импортировать в другие модули?
Я у себя делаю через мидлварь инстансов.

Как идет?
- Сначала в __main__ создаются экземпляры, которые будут производить некую работу в обработчиках.
- Затем они явно закидываются в мидлварь.
- При надобности берутся прямо из аргументов хэндлера, их туда подсовывает мидлварь.

Не претендую на лучшее решение, это просто удобно
источник