如何在discord.py最新版本中分配角色?

时间:2020-04-07 19:25:25

标签: python python-3.x discord.py discord.py-rewrite

我整天都在寻找,我似乎找不到合适的方法来为成员分配角色。我尝试了几种分配角色的方法:

@client.command(pass_context=True)
async def claimrank(ctx, role: discord.Role):
    user = ctx.message.author
    await user.add_roles(role='Rookie')

和:

@client.command()
async def claimrank(member):
    role = get(member.guild.roles, name="Rookie")
    await member.add_roles(role)

更糟糕的是,通过这两次尝试,我都没有收到任何错误,但是代码却没有执行任何操作。 请帮忙! 预先感谢。

1 个答案:

答案 0 :(得分:1)

我是最近从一篇帖子中得到的。我将编写代码并查找原始帖子。

@client.command(pass_context=True)
async def addrole(ctx):
    user = ctx.message.author 
    role = 'role' #change the role here
    try:
        await user.add_roles(discord.utils.get(user.guild.roles, name=role)) 
    except Exception as e:
        await ctx.send('Cannot assign role. Error: ' + str(e))

找到@Patrick Haugh的原始帖子:Give and remove roles with a bot, Discord.py