问题描述
我创建了一个超级简单的 .report <person> 命令.我有它,所以当有人键入它时它将被发送到某个频道.我想做的是让它显示报告其他用户的用户的名称.我不知道该怎么做.有谁知道最好的方法吗?
I created a super simple .report <person> command. I have it so it will be sent to a certain channel when someone types it. What I wanted to do is have it display the name of the user who reported the other user. I don't know how to go about doing that. Does anyone know the best way?
@bot.command() async def report(*, message): await bot.delete(message) await bot.send_message(bot.get_channel("479177111030988810"), message)
推荐答案
你可以这样做,获取上下文 (ctx) 并从中获取消息的内容及其作者
You could do something like this, where you take the context (ctx) and from it get the contents of the message and its author
@bot.command(pass_context=True) async def report(ctx): await bot.delete_message(ctx.message) report = f""{ctx.message.content[8:]}" sent by {ctx.message.author}" await bot.send_message(bot.get_channel("479177111030988810"), report)