python - 将角色添加到文本通道 discord.py discord bot
问题描述
我正在尝试制作一个不和谐的机器人来创建一个频道,然后将其权限添加到特定的角色。
这是添加通道的代码:
server = message.server
everyone = discord.PermissionOverwrite(read_messages=False, send_messages=False)
mine = discord.PermissionOverwrite(read_messages=True)
await client.create_channel(server, 'secret', (server.default_role, everyone), (server.me, mine))
overwrite = discord.PermissionOverwrite(read_messages=True, send_messages=True)
await client.edit_channel_permissions(message.channel, discord.utils.get(server.roles, name="InFight"), overwrite)
所以机器人添加了频道,但没有给“InFight”角色指定的权限。知道问题是什么吗?我想这就是我提到这个角色的方式。
解决方案
我对 discord.py 不是很熟悉,但考虑到您正在搜索角色,它可能会返回一个列表。您应该尝试获得第一个结果
rolesearch = discord.utils.get(server.roles,
name="InFight")
await client.edit_channel_permissions(message.channel,
rolesearch[0], overwrite)
编辑:还要确保您的机器人具有适当的权限
推荐阅读
- xcode - Xcode 9 在 clean 上执行自定义命令
- html - asp.net MVC 中的 html 音频 currentTime 和 FileResult
- c++ - 如何确定迭代器在c ++模板函数中指向的对象的类型?
- keras - 这个 Keras 模型在创建时工作,但在加载时失败。怀疑张量分裂
- javascript - 无法调用 API 和接收汇率
- node.js - Unexpected token ILLEGAL (ELF) Raspberry Pi Node Webkit Linux v0.31.3
- data-science - 如何为线性回归获得调整后的 R 平方
- salt-stack - 使用 state 升级 minion 中的所有包
- r - 多个图例的标题与 ggplot2 中的 position="bottom" 不对齐
- docker - 在一个 docker 容器中移动 jar 文件