【问题标题】:How to blacklist and whitelist users in discord.py?如何在 discord.py 中将用户列入黑名单和白名单?
【发布时间】:2021-02-21 15:11:18
【问题描述】:

您好,我正在尝试创建白名单和黑名单命令,通过这些命令我可以将使用我的机器人的用户列入黑名单,我正在使用 postgreSQL,并且我已经成功创建了存储用户 ID 的命令以及将用户列入黑名单的原因,我只想知道如何进行全局检查或类似的操作,以便机器人在处理每个命令之前检查 blacklisted_users 表,如果作者 ID 在黑名单用户中,则返回。 抱歉,我无法提供我尝试过的内容,因为 Idk 实际上从哪里开始。我只是想知道这种全局检查的基本语法,我可以处理休息。 谢谢。

【问题讨论】:

    标签: python discord discord.py


    【解决方案1】:

    API docsBot.check

    为机器人添加全局检查的装饰器。

    全局检查类似于 check() 命令基础,除非它在任何命令检查之前运行 验证并适用于机器人拥有的每个命令。

    类似于命令 check(),它接受一个类型的参数 上下文并且只能引发从 CommandError 继承的异常。

    这意味着您首先必须编写一个函数来检查ctx author.id 是否在您的blacklist 表中,或者返回一个函数以返回list 中黑名单中的每个id

    @Bot.check()
    def blacklist_check(ctx):
        blacklisted = [] # Write a function that gets every blacklisted user's ID from your database
        return ctx.author.id not in blacklisted # Checks if the author is in your blacklist
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-18
      • 2012-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多