Python (discord.py)为什么我的踢腿命令不起作用?
我有我的Python (discord.py)为什么我的踢腿命令不起作用?,python,discord,discord.py,Python,Discord,Discord.py,我有我的on\u命令错误事件 @client.command @commands.has_permissions(kick_members=True) async def kick(ctx, member: discord.Member, *, reason = None): await member.kick(reason=reason) await ctx.send(f'{member} Has been kicked') 然后我在discord中收到错误消息 disco
on\u命令错误事件
@client.command
@commands.has_permissions(kick_members=True)
async def kick(ctx, member: discord.Member, *, reason = None):
await member.kick(reason=reason)
await ctx.send(f'{member} Has been kicked')
然后我在discord中收到错误消息
discord.py版本1.5
@kick.error
async def on_kick_error(ctx, error):
if isinstance(error, commands.MissingRequiredArgument):
await ctx.send('Please specify an user')
elif isinstance(error, commands.CheckFailure):
await ctx.send('You do not have a perms to do that!')
else:
await ctx.send('There is some error')
这行吗
@commands.has_permissions(kick_members=True)
@client.command()
async def kick(ctx, user: discord.Member, *, reason="No reason provided"):
await user.kick(reason=reason)
kick = discord.Embed(title=f":boot: Kicked {user.name}!", description=f"Reason: {reason}\nBy: {ctx.author.mention}")
await ctx.message.delete()
await ctx.channel.send(embed=kick)
await user.send(embed=kick)
这应该行。尝试添加括号:@client.command()
它有权限吗?比如机器人许可
@client.command()
@commands.has_permissions(kick_members=True)
async def kick(ctx, member: typing.Optional[discord.Member], arg = None):
if arg == None:
await ctx.send("Kicked " + member.mention + ".")
else:
await ctx.send("Kicked " + member.mention + " for " + arg + ".")
await ctx.guild.kick(member)