如何检查某人是否为管理员[Python中的Discord机器人]

时间:2019-01-06 09:40:38

标签: python discord

正如标题所述,我无法检查是否有人是管理员。我尝试了以下代码:

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

没有任何效果。你能帮助我吗 ? 谢谢

1 个答案:

答案 0 :(得分:0)

如果message.author.server_permissions.administrator不起作用。

将其更改为message.author.guild_permissions.administrator

或者尝试message.author.top_role.permissions.administrator,这将给您带来麻烦。

有一件事是,通常服务器所有者将管理员设置为服务器的最高角色,因此这在大多数情况下都会起作用。但是,如果他们不这样做,那么第三个sol将无法工作。