user_id = message.message.from_user.id
if is_banned(user_id):
await bot.send_message(user_id, text="Вы заблокированы.")
return
return await func(update, context)
return wrapper
@dp.message_handler(commands=['start'])
@has_banned
async def start_command(message): ...
Возможно ли сделать такой декоратор? Если да, то как, ведь он не работает без await
def has_banned(func): без асинк
Прикол, спасибо
ты понимаешь как вообще работает декоратор?
Понимаю, но прикол с асинхронностью внутри декоратора не знал
так она не внутри декоратора, а внутри новой функции
Это я понимаю, что он ее возвращает просто, но я такую фишку не знал, что можно в синхронной функции вернуть асинхронную Век живи - век учись
ну по факту ты просто что-то возвращаешь. Ты же не эвейтишь ничего и с лупом не работаешь
Да, на разборе уже это становится понятно, но сначала когда тупо увидел внутри функции слова async и await захотелось избежать ошибок, еще и пайчарм await подсвечивает
Обсуждают сегодня