@bot.slash_command(guild_ids=[1061756784567656448])
async def oui(ctx):
button = Button(label="A + 1", style=ButtonStyle.blurple)
myview = View(timeout=180)
myview.add_item(button)
async def aurevoir(ctx):
await ctx.send_message("aurevoir")
async def bonjour(interaction: discord.Interaction):
await interaction.response.send_message("bonjour")
await aurevoir(ctx)
button = Button(label="A + 1", style=ButtonStyle.blurple)
myview = View(timeout=180)
myview.add_item(button)
button.callback = bonjour
await ctx.send(f"hello",view= myview)
函数“aurevoir”从来不发送消息,我得到了很多错误,如“Context”对象没有属性“send_message”。我不知道如何修复它。
1条答案
按热度按时间x0fgdtte1#
问题是您传递了
ctx
对象-最好使用bonjour
在您按下按钮时获得的交互对象,并使用交互上的followup
属性发送消息。我还添加了一个
ctx.defer
和一个ctx.followup.send
。