【发布时间】:2021-05-30 01:14:07
【问题描述】:
这是我需要的程序的最后一部分,删除功能。在这部分之前,该机器人可以完美运行。我正在尝试添加一个删除函数来删除 Discord Embed 和相应的数据库行。
所以这个程序是通过提示用户工作的,然后他们的输入存储在我的 SQLite3 数据库中,然后显示在嵌入中。然后我有另一个命令!view,它显示数据库中每一行的嵌入以及相应的信息。它还在每个嵌入的末尾添加了一个垃圾桶表情符号。当按下反应删除嵌入以及它在数据库中相关的行时,我想要这个删除功能。我似乎都无法正常工作。
这里是!view 命令:
if message.content.startswith('!view'):
rows = cursor.execute("SELECT name, renter, duration, price, start, end FROM rental").fetchall()
for row in rows:
embed = discord.Embed(title='Rental', color=0x0000FF)
embed.set_thumbnail(url='https://www.pngkit.com/png/detail/231-2316751_database-database-icon-png.png')
embed.add_field(name='Bot Name:', value=row[0], inline=False)
embed.add_field(name='Renter Name:', value=row[1], inline=False)
embed.add_field(name='Rental Duration:', value=row[2], inline=False)
embed.add_field(name='Rental Price:', value=row[3], inline=False)
embed.add_field(name='Start Date:', value=row[4], inline=False)
embed.add_field(name='End Date:', value=row[5], inline=False)
embed.set_footer(icon_url='https://pbs.twimg.com/profile_images/1325672283881484289/oaGtVIOD_400x400.png', text='Created by @Expected')
msg = await message.channel.send(embed=embed)
await msg.add_reaction('\U0001F5D1')
我知道如何删除不和谐消息,但数据库条目是它让我绊倒的地方。我是否需要通过像 ROWID 这样的唯一标识符来删除?我真的不知道该把这部分放在哪里。
【问题讨论】:
标签: python sqlite discord.py