Discord.py删除角色

时间:2020-04-08 03:32:28

标签: python discord discord.py

我正在尝试使不和谐的机器人删除“新”角色。到目前为止,它不起作用。谁能告诉我为什么,什么是正确的?

@client.command(pass_context=True)
async def remove(ctx):
    rid = discord.utils.get(ctx.message.server.roles, name="new")
    await ctx.delete_role(ctx.message.server, rid)
    await ctx.say("hi")

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您应该确保使用的是最新版本的discord.py,在撰写本文时,该版本为v1.4.0a。您在此处使用的代码似乎很旧。删除名称为"new"的角色的正确方法如下:

@client.command()
async def remove(ctx):
   role = discord.utils.get(ctx.guild.roles, name='new')
   await role.delete(reason='Removed by command')

完整的文档可以在这里找到:https://discordpy.readthedocs.io/en/latest/index.html

具体方法discord.Role.delete可以在这里找到: https://discordpy.readthedocs.io/en/latest/api.html?highlight=discord%20role%20delete#discord.Role.delete

我建议不要关注YouTube视频,因为其中许多视频已过时。