@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'。我該如何修復這個錯誤?這段代碼適用于我的朋友。
1 回答

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
該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.")
添加回答
舉報
0/150
提交
取消