Size: a a a

2020 November 29

У

Ульба in aiogram [ru]
.split(' ') и в путь
источник

A

Alex in aiogram [ru]
Language:
py3


Source:
str = '/mute 1m'
print(str.split())
print(str.split(' '))


Result:
['/mute', '1m']
['/mute', '1m']
источник

|

|Атикd # in aiogram [ru]
Language:
py3


Source:
num=""
text=""
for i in "1m":
   if i.isdigit():
       num+=i
   else:
       text+=i
print(f"{num}\n\n{text}")


Result:
1

m
источник

|

|Атикd # in aiogram [ru]
Как то так
источник

|

|Атикd # in aiogram [ru]
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
🤔баны всем
источник

ЕП

Евгений Петров... in aiogram [ru]
Никак не пойму эти ваши миддлвари.
Выше мне тут предложили логирование включить в миддлварь, но при этом остаются вопросы:

1) Как этой мидлвари сказать, какие хэндлеры надо логировать, а какие нет?
2) Как on_post_process_message понимает, сработал какой-то хэндлер или нет? Смотрю исходники LoggingMiddleware, в 40-й строке, как понимаю, определяется, было обработано сообщение или нет. Делаю аналогично:

class MyLogMiddleware(BaseMiddleware):
   def __init__(self):
       super().__init__()

   async def on_post_process_message(self, message: types.Message, results, data: dict):
       print(f"Results has type {type(results)} and value {results}")
       print(f"Data is {data}")


Но при этом results ВСЕГДА пустой, не важно, был обработан апдейт или нет. Что за хрень?
источник

E

Eagint in aiogram [ru]
|Атикd #
Language:
py3


Source:
num=""
text=""
for i in "1m":
   if i.isdigit():
       num+=i
   else:
       text+=i
print(f"{num}\n\n{text}")


Result:
1

m
"60m60" - не работает это блядь
используйте готовые инструменты
хватит придумывать велосипед
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
Евгений Петров
Никак не пойму эти ваши миддлвари.
Выше мне тут предложили логирование включить в миддлварь, но при этом остаются вопросы:

1) Как этой мидлвари сказать, какие хэндлеры надо логировать, а какие нет?
2) Как on_post_process_message понимает, сработал какой-то хэндлер или нет? Смотрю исходники LoggingMiddleware, в 40-й строке, как понимаю, определяется, было обработано сообщение или нет. Делаю аналогично:

class MyLogMiddleware(BaseMiddleware):
   def __init__(self):
       super().__init__()

   async def on_post_process_message(self, message: types.Message, results, data: dict):
       print(f"Results has type {type(results)} and value {results}")
       print(f"Data is {data}")


Но при этом results ВСЕГДА пустой, не важно, был обработан апдейт или нет. Что за хрень?
зачем тебе хендлеры обрабатывать отдельно
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
весь апдейт бери
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
тип текст дата юзеры
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
если делать учет так учет всего и детально
источник

|

|Атикd # in aiogram [ru]
Eagint
"60m60" - не работает это блядь
используйте готовые инструменты
хватит придумывать велосипед
Мут на 6060 минут🥴
источник

ЕП

Евгений Петров... in aiogram [ru]
👑OGURCHIK🖤 ️
зачем тебе хендлеры обрабатывать отдельно
В смысле? Для разбивки по командам, например.
Типа столько /start, столько /stop
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
ну вот из апдейтов и брать текста
источник

ЕП

Евгений Петров... in aiogram [ru]
Ну тогда получается дублирование кода: первый раз ты делаешь кучу if-else в миддлваре, второй раз - в виде хэндлеров. И привет классическая ошибка "тут поправил, тут не поправил"
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
1 будут все данные
2 юудет легко подключить. одна мидельварь на пре пре
3 не будет привязка к входным данным и как следствие можно не только на аиограме применять
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
пителега вроде тоже может в мидельвари
источник

👑️

👑OGURCHIK🖤 ️ in aiogram [ru]
сделать как стореджы в аиограме
источник

ЕП

Евгений Петров... in aiogram [ru]
Это не отвечает на мой вопрос всё равно
источник