我正在尝试一个不和谐的机器人删除角色“新”。到目前为止,它不起作用。有人能告诉我为什么,什么是正确的吗?
@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")
有什么想法吗?
您应该确保您使用的是最新版本的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角色删除#discord.Role.delete
我建议不要看YouTube视频,因为其中许多已经过时了。