Discord.py decorator在失败后仍然调用函数

Discord.py decorator在失败后仍然调用函数,discord.py,python-decorators,Discord.py,Python Decorators,我理解为什么会打印错误检查,但我不理解为什么尽管用户调用没有mod标签,但它仍然运行函数,也许我真的不理解decorators(用户也有一个令牌角色,但我在测试中注释了该部分) 以下是输出: 在使用mod角色之前,为什么不使用检查用户是否有server administrator来运行它呢。为此,您只需更换: @commands.has_role('mod') 与: 这将使该命令仅在指定用户具有服务器管理员时运行。 如果您需要更多帮助,请随时回复!:) 我确实有这个,但它也没有阻止函数运行:(

我理解为什么会打印错误检查,但我不理解为什么尽管用户调用没有mod标签,但它仍然运行函数,也许我真的不理解decorators(用户也有一个令牌角色,但我在测试中注释了该部分)

以下是输出:


在使用mod角色之前,为什么不使用检查用户是否有server administrator来运行它呢。为此,您只需更换:

@commands.has_role('mod')
与:

这将使该命令仅在指定用户具有服务器管理员时运行。
如果您需要更多帮助,请随时回复!:)

我确实有这个,但它也没有阻止函数运行:(但在任何一种情况下,测试帐户既不是mod也不是administrator,所以我不知道为什么我调用函数时一直看到“youhaveatoken..”;嘘,让我看看。
@commands.has_role('mod')
@commands.has_guild_permissions(administrator=True)