Я знаю, что задавал этот вопрос раньше, но новое обновление внезапно сломало мой код. Вот что у меня есть:
def predicate(ctx):
return Moderation.mod_role in ctx.author.roles
has_mod_role = commands.check(predicate)
class Moderation(commands.Cog):
mod_role = None
def __init__(self, bot: commands.Bot):
self.bot = bot
self.mod_role = ...
@commands.command()
@has_mod_role
async def command(self, ctx):
...
Раньше это работало, но теперь роль Moderation.mod_role изменилась с роли, определенной в функции, на None, поэтому команды не работают с людьми, даже если у них есть необходимая роль.
Я использую python 3.8 и discord.py 1.3.1.
self.mod_role = ...
строки? Вот что здесь на самом деле не удается. - person Patrick Haugh   schedule 19.02.2020