【问题标题】:'Command' object has no attribute 'has_permissions'“命令”对象没有属性“has_permissions”
【发布时间】:2021-01-19 16:28:28
【问题描述】:
@client.command()
@commands.has_permissions(administrator=True)
async def kick(ctx, member : discord.Member, *, reason=None):
    try:
        await member.kick(reason=reason)
        embed = discord.Embed(colour=maincolour)
        embed.title = f"**Member {member.mention} Kicked."
        embed.description = f"**Reason** » {reason}.\n**Status** » Successful!"
        await ctx.send(embed=embed)
    except:
            embed = discord.Embed(colour=maincolour)
            embed.title = "**Kick not successful."
            embed.description = "**Possible Errors:**\n» Insufficient Permissions (Requires Administrator)\n» Error with Bot."
            await ctx.send(embed=embed)

上线

@commands.has_permissions(administrator=True)

错误是'Command' object has no attribute 'has_permissions'

如何解决此错误?此代码适用于我的朋友。

【问题讨论】:

  • 你能展示你的进口吗?
  • 你安装了什么版本的 discord.py?

标签: python discord discord.py


【解决方案1】:

has_permissions 属性不在命令下。这应该是正确的做法。

from discord.ext.commands import has_permissions, MissingPermissions

@client.command()
@has_permissions(administrator = True)  
async def test(ctx):
    pass

@test.error
async def test_error(error, ctx):
    if isinstance(error, MissingPermissions):
        await ctx.send("Looks like you don't have the permissions.")

【讨论】:

  • 很高兴听到这个消息!如果你不介意,你能把我的答案标记为正确吗?只是帮了我很多忙!
  • 完成!再次感谢您。
  • 请您也告诉我诸如 MissingPermissions、InvalidParameters 之类的模块吗?像 discord.py 中的大多数一样。
  • discord.ext.commands 库中的扩展名实在太多,无法列出。我建议您在这里查看他们的列表。 discordpy.readthedocs.io/en/latest/…
  • 谢谢!会有很大帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-25
  • 2019-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多