不协调给予角色问题

时间:2020-07-07 14:18:07

标签: python discord

我原本打算制作一个静音命令,但是我遇到了一个大问题,我不知道该怎么做。 代码:

@client.command()
@commands.has_role("Mod")
async def mute(ctx, user : discord.Member):
    role = 730016083871793163
    #h = 3600 #seconds
    #m = 60 #seconds
    await user.add_roles(role)

错误:

discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'int' object has no attribute 'id'

1 个答案:

答案 0 :(得分:0)

出现此错误的原因是因为您提供的是int对象,而不是role对象。您的int对象没有属性id,但是role有属性。

要获取角色对象,可以使用discord.utils.get

roleobject = discord.utils.get(ctx.message.guild.roles, id=role)
await user.add_roles(roleobject)