Содержание
Как правильно задавать роли в команде discord py?
Команда:
Выдает ошибку
Ignoring exception in command addrole: Traceback (most recent call last): File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\ext\commands\core.py", line 85, in wrapped ret = await coro(*args, **kwargs) File "C:\Overseer\bot.py", line 45, in addrole await member.add_roles(member, role) File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\member.py", line 664, in add_roles await req(guild_id, user_id, role.id, reason=reason) File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\http.py", line 243, in request raise NotFound(r, data) discord.errors.NotFound: 404 Not Found (error code: 10011): Unknown Role The above exception was the direct cause of the following exception: Traceback (most recent call last): File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\ext\commands\bot.py", line 903, in invoke await ctx.command.invoke(ctx) File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\ext\commands\core.py", line 859, in invoke await injected(*ctx.args, **ctx.kwargs) File "C:\Users\Professional\AppData\Local\Programs\Python\Python37\lib\site-packages\discord\ext\commands\core.py", line 94, in wrapped raise CommandInvokeError(exc) from exc discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NotFound: 404 Not Found (error code: 10011): Unknown Role
указывать уже не нужно, дефолтно оно включено.
Как мы видим по ошибке роль не найдена, в чем же дело?
Как ни странно add_roles принимает один параметр, а именно саму роль, вы же передаете юзера, что не нужно т.к вы применяете этот метод к юзеру.
должно быть так:
await member.add_roles(role)
И не забывайте про доки)
У меня вообще бред выводит: ‘User’ object has no attribute ‘add_roles’.
Видимо прога почему-то не воспринимает «await author.add_roles(role)» как команду, что делать?