我编写了自己的过滤器来检查数据库中的管理员:
class IsAdmin:
def __call__(self, message: Message) -> bool:
"""
:return: bool
"""
return db.reference(f'users/{message.from_user.id}/role/admin').get() is True
def __invert__(self, message: Message) -> bool:
"""
:return: bool
"""
return db.reference(f'users/{message.from_user.id}/role/admin').get() is False
但是当我使用时:
@dp.message(~IsAdmin())
出现错误,需要发送什么message,好吧
@dp.message(lambda msg: ~IsAdmin(msg))
没有任何作用,没有错误