errors.MissingRole при использовании slash_command Discord.py
Помогите пожалуйста с проблемой. Использую slash_command.
@bot.slash_command(aliases=['сетделэй', 'сетделай'], name='setdelay', description='Устанавливает slowmode на канале',
guild_ids=[guild_id])
@commands.has_role(admin_role)
async def setdelay(ctx, seconds: int):
await ctx.channel.edit(slowmode_delay=seconds)
await ctx.respond(f"Установлен режим замедления в {seconds} сек.")
channel = bot.get_channel(logs_channel)
await channel.send(f'> **{ctx.author}** использовал команду - __«setdelay»__')
Если использую команду юзером с правами админа, то все хорошо.
Но как только команду использует юзер без необходимых прав, то выдаёт следующую ошибку:
discord.ext.commands.errors.MissingRole: Role 'admin' is required to run this command.
Мой обработчик ошибок:
@bot.event
async def on_command_error(ctx, error):
if isinstance(error, commands.errors.MissingRole):
await ctx.send(f'{ctx.author.mention} недостаточно прав для команды.')
Когда не использовал slash_command все отлично работало. Может мне стоит как-то ловить ошибку внутри функции? Знаю, что можно ловить ошибку именно конкретной функции и все будет работать, но у меня функций оч много, хотелось бы одним обработчиком все ловить.