如何在不使用命令的情况下获取 GuildID
How can I grab a GuildID without having to use a command
我正在尝试制作一个具有日志记录功能的多服务器机器人。我有一个可以接收日志通道 ID 的数据库,我知道如何 select 它们,但在这种情况下(显示名称更新)你不能只获取 ctx.guild.id。所以我对如何做到这一点感到非常困惑。我只使用 .json 文件会更好吗?
@Cog.listener()
async def on_member_update(self, before, after):
if before.display_name != after.display_name:
logchannel = self.bot.guild.get_channel(db.field("SELECT LogChannel FROM guilds WHERE GuildID = ?", guild.id))
embed = Embed(title="Member update", description="Nickname has been changed.", colour=after.colour, timestamp=datetime.utcnow())
fields = [("Before", before.display_name, False),
("After", after.display_name, False)]
for name, value, inline in fields:
embed.add_field(name=name, value=value, inline=inline)
embed.set_image(url=before.avatar_url)
await logchannel.send(embed=embed)
使用before.guild.id或after.guild.id
我正在尝试制作一个具有日志记录功能的多服务器机器人。我有一个可以接收日志通道 ID 的数据库,我知道如何 select 它们,但在这种情况下(显示名称更新)你不能只获取 ctx.guild.id。所以我对如何做到这一点感到非常困惑。我只使用 .json 文件会更好吗?
@Cog.listener()
async def on_member_update(self, before, after):
if before.display_name != after.display_name:
logchannel = self.bot.guild.get_channel(db.field("SELECT LogChannel FROM guilds WHERE GuildID = ?", guild.id))
embed = Embed(title="Member update", description="Nickname has been changed.", colour=after.colour, timestamp=datetime.utcnow())
fields = [("Before", before.display_name, False),
("After", after.display_name, False)]
for name, value, inline in fields:
embed.add_field(name=name, value=value, inline=inline)
embed.set_image(url=before.avatar_url)
await logchannel.send(embed=embed)
使用before.guild.id或after.guild.id