python - 如何使用 discord.py 和 Python 更改所有文本通道的权限?
问题描述
我想做一个命令,允许使用 discord.py 修改所有文本通道的权限。例如,禁用在所有文本通道中发送消息。
我查看了 discord.py 的文档,发现有一个 PermissionOverwrite 类(https://discordpy.readthedocs.io/en/latest/api.html?highlight=app#permissionoverwrite)允许在权限级别(尤其是函数更新)。
@client.command()
async def lock(ctx):
ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
解决方案
您可以简单地Guild.channels
用于服务器中所有频道的列表,并且GuildChannel.set_permissions
正如您已经在使用的那样,用于每个频道。
推荐阅读
- javascript - 如何在将顶部保持在同一位置的同时缩放 div
- android - 清单合并失败 - android studio 错误
- django - Django Rest Framework check_object_permissions 未被调用
- android - 未应用自定义 SearchView 样式
- java - 是否可以从 Intellij 插件内部使用 FileDialog?
- java - 如果参数化查询是从受信任的应用程序系统中检索的输入,如何解决扫描的 sql 注入问题?
- python - Airflow + python 日志模块不写入日志文件
- javascript - 使用 postgresSQL 设置护照本地策略
- c++ - Eclipse C++ 中的漂亮打印适用于某些项目,但不适用于其他项目
- android - DND 开启时无法检测到振动模式