【问题标题】:Unable to add permissions to a newly created role in Discord.py无法向 Discord.py 中新创建的角色添加权限
【发布时间】:2020-01-11 10:41:15
【问题描述】:

我想向我的机器人添加一个使人们静音的命令,如果静音角色不存在,它会使用已实现的权限创建它。我的方法不行。

这是我的代码:

       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_role 中,但出现了同样的错误

谢谢

【问题讨论】:

    标签: python discord discord.py


    【解决方案1】:

    Permissions 不接受权限的关键字参数。相反,它需要一个表示权限位串的整数。这对你来说没什么用,所以你可以编写一个辅助函数来创建对象,然后调用 Permissions.update 方法,它确实接受关键字参数

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 1970-01-01
      • 2020-09-24
      • 2018-06-21
      • 2020-10-16
      • 2020-09-02
      相关资源
      最近更新 更多