首页 > 解决方案 > Discord.py 重写。如何创建添加角色的命令?

问题描述

我正在尝试创建一个机器人,允许用户通过键入 .lfg(前缀 = .)将自己添加到角色(寻找组)。我已经尝试过查看 API 参考,但仍然不明白如何使用discord.Member.add_roles 到目前为止,这是我的代码:

@client.command(pass_context=True)
async def lfg(ctx):
    member = ctx.message.author
    test = discord.utils.get(member.guild.roles, name="Looking for group")
    print(test)
    await discord.Member.add_roles(test,reason=None,atomic=True)
    await ctx.send("Role added")

标签: pythondiscorddiscord.py

解决方案


它应该是 member.add_roles() ,因为您已将 ctx.author 定义为 member 并且不需要 pass_context

@client.command()
async def lfg(ctx):
    member = ctx.message.author
    test = discord.utils.get(member.guild.roles, name="Looking for group")
    print(test)
    await member.add_roles(test,reason=None,atomic=True)
    await ctx.send("Role added")

推荐阅读