无法向Discord.py中新创建的角色添加权限

2024-06-13 13:48:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我想向我的bot添加一个命令,使人静音,如果静音的角色不存在,它将使用已经实现的perms创建它。我的方法行不通

这是我的密码:

       if murole is None:
         guild = ctx.message.guild
         await guild.create_role(name="Muted")
         murole = discord.utils.get(ctx.guild.roles, name="Muted")
         await murole.edit(permissions=discord.Permissions(send_messages=False, read_messages=True))

         await member.add_roles(murole)


这是我的错误: sorry that i had to give an image instead of a copy, it would send a keyboard interrupt error and wont let me copy it

我试图将权限直接放入create_角色中,但出现了相同的错误

多谢各位


Tags: namesend角色错误create静音awaitmessages
1条回答
网友
1楼 · 发布于 2024-06-13 13:48:30

Permissions不接受权限的关键字参数。相反,它接受一个整数,表示权限的位字符串。这对您来说是非常无用的,因此您可以编写一个helper函数来创建对象,然后调用^{}方法,该方法接受关键字参数

def make_permissions(**kwargs):
    perms = Permissions()
    perms.update(**kwargs)
    return perms

相关问题 更多 >