python - 如何检查某人是否是管理员[Python中的Discord bot]
问题描述
正如标题所说,我无法检查某人是否是管理员。我尝试了以下代码:
if message.content.startswith("!add"):
if discord.Member.server_permissions == "administrator" :
messagePart = message.content.partition(" ")
places.append(messagePart[2])
para = discord.Embed(title="List of every landing site", description=show())
await client.send_message(message.channel, embed=para)
else :
return
但我也试过这个:
if message.content.startswith("!add"):
if message.author.server_permissions.administrator == True:
messagePart = message.content.partition(" ")
places.append(messagePart[2])
para = discord.Embed(title="List of every landing site", description=show())
await client.send_message(message.channel, embed=para)
else :
return
没有任何效果。你能帮助我吗 ?谢谢
解决方案
如果 message.author.server_permissions.administrator
不起作用。
将其更改为message.author.guild_permissions.administrator
或尝试message.author.top_role.permissions.administrator
,这将返回一个布尔值。
一件事是,通常服务器所有者将管理员设置为服务器最高角色,所以这在大多数情况下都会起作用。但如果他们不这样做,第三个溶胶就不起作用。
推荐阅读
- docker - Docker-compose 未正确公开端口
- office-js - 如何在我的 Outlook 加载项中支持 Gmail
- python - 烧瓶中的 after_request 在请求完成后运行,但终端显示否则
- c# - C# 从 SslStream 连续读取(长连接,持续长达数天)并且有效地没有无限循环
- arrays - 如何使用 Swift 5 找到结构数组项之一的最小值或最大值项索引
- php - 在谷歌我的业务 api 中找不到获取方法
- android - UITextView 像 Android 一样的自动换行
- python - 我想用 bs4 从亚马逊获取产品的标题
- gcc - __FILE__ 和 __FUNCTION__ 提供的指针的值是否不变?
- node.js - 如何在车把的 express.js 文件中进行 AJAX POST 调用?