【问题标题】:How to limit Administration menu to Admins, Mods and Owners (PyCharm 2020.3.3 Python 3.9.1如何将管理菜单限制为管理员、模组和所有者(PyCharm 2020.3.3 Python 3.9.1
【发布时间】:2021-05-21 05:39:32
【问题描述】:

我很久以前就创建了一个管理 cog,但我并没有限制管理员使用它。我试图为管理员限制它,但我只能将 cog 限制为一个角色。如何使 cog 仅限于拥有管理员权限的人?

当前代码:

    async def cog_check(self, ctx):
        admin = get(ctx.guild.roles, name="Admin")
        return admin in ctx.author.roles

【问题讨论】:

    标签: python pycharm discord.py python-3.9


    【解决方案1】:

    如果你需要执行命令的人有一定的权限,你可以使用discord.ext.commands.has_permissions(),否则你也可以使用返回Permissions objectpermissions_for()并使用permission administrator

    应该是这样的

    async def cog_check(self, ctx):
        return ctx.channel.permissions_for(ctx.author).administrator
    

    当且仅当成员具有权限管理员(在他的角色之一或在频道中指定他的权限)时,此协程才会返回 True

    【讨论】:

      猜你喜欢
      • 2013-07-24
      • 1970-01-01
      • 2015-05-29
      • 2020-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-14
      相关资源
      最近更新 更多