fix bug related to a nonexistent row in the settings table

This commit is contained in:
2025-02-20 23:30:47 -05:00
parent 5115636f60
commit c19215113f
2 changed files with 32 additions and 12 deletions

View File

@@ -62,9 +62,14 @@ async fn get_prefix(ctx: PartialContext<'_, Data, Error>) -> Result<Option<Strin
let db = &ctx.data.database;
let prefix: Option<String> = sqlx::query("SELECT prefix FROM settings WHERE guildid = $1")
let prefix = match sqlx::query("SELECT prefix FROM settings WHERE guildid = $1")
.bind(guild.get() as i64)
.fetch_one(db).await?.get(0);
.fetch_one(db).await
{
Ok(r) => r.get(0),
Err(sqlx::Error::RowNotFound) => None,
Err(e) => return Err(Box::new(e)),
};
Ok(prefix.or(ctx.data.prefix.clone()))
}