feat: 添加站点设置中的 favicon URL 支持,更新相关接口和页面
All checks were successful
ui-regression / playwright-regression (push) Successful in 6m20s
docker-images / resolve-build-targets (push) Successful in 6s
docker-images / build-and-push (admin) (push) Successful in 25s
docker-images / build-and-push (backend) (push) Successful in 35s
docker-images / build-and-push (frontend) (push) Successful in 1m46s
docker-images / submit-indexnow (push) Successful in 15s

This commit is contained in:
2026-04-03 02:13:27 +08:00
parent 27d0827f3e
commit 36d505ece6
19 changed files with 143 additions and 5 deletions

View File

@@ -47,6 +47,7 @@ mod m20260402_000036_create_worker_jobs;
mod m20260402_000037_add_wechat_share_qr_setting_to_site_settings;
mod m20260402_000038_add_music_enabled_to_site_settings;
mod m20260402_000039_add_maintenance_mode_to_site_settings;
mod m20260403_000040_add_favicon_url_to_site_settings;
pub struct Migrator;
#[async_trait::async_trait]
@@ -98,6 +99,7 @@ impl MigratorTrait for Migrator {
Box::new(m20260402_000037_add_wechat_share_qr_setting_to_site_settings::Migration),
Box::new(m20260402_000038_add_music_enabled_to_site_settings::Migration),
Box::new(m20260402_000039_add_maintenance_mode_to_site_settings::Migration),
Box::new(m20260403_000040_add_favicon_url_to_site_settings::Migration),
// inject-above (do not remove this comment)
]
}

View File

@@ -0,0 +1,45 @@
use sea_orm_migration::prelude::*;
#[derive(DeriveMigrationName)]
pub struct Migration;
#[async_trait::async_trait]
impl MigrationTrait for Migration {
async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> {
let table = Alias::new("site_settings");
if !manager.has_column("site_settings", "seo_favicon_url").await? {
manager
.alter_table(
Table::alter()
.table(table.clone())
.add_column(
ColumnDef::new(Alias::new("seo_favicon_url"))
.string()
.null(),
)
.to_owned(),
)
.await?;
}
Ok(())
}
async fn down(&self, manager: &SchemaManager) -> Result<(), DbErr> {
let table = Alias::new("site_settings");
if manager.has_column("site_settings", "seo_favicon_url").await? {
manager
.alter_table(
Table::alter()
.table(table)
.drop_column(Alias::new("seo_favicon_url"))
.to_owned(),
)
.await?;
}
Ok(())
}
}