feat(admin): 素材页「孤儿」更名为「未引用」
与「引用中」对仗更自然。覆盖统计行、筛选 tab、清理按钮、 清理结果横幅、卡片徽章及 purge 服务端消息;代码标识符 (orphan_count / purge_orphan_assets 等)保持不变。
This commit is contained in:
parent
a890257009
commit
d610fd5837
@ -149,7 +149,7 @@ pub async fn purge_orphan_assets() -> Result<PurgeOrphansResponse, ServerFnError
|
|||||||
if rows.is_empty() {
|
if rows.is_empty() {
|
||||||
return Ok(PurgeOrphansResponse {
|
return Ok(PurgeOrphansResponse {
|
||||||
success: true,
|
success: true,
|
||||||
message: "没有可清理的孤儿素材".to_string(),
|
message: "没有可清理的未引用素材".to_string(),
|
||||||
deleted_count: 0,
|
deleted_count: 0,
|
||||||
freed_bytes: 0,
|
freed_bytes: 0,
|
||||||
failures: 0,
|
failures: 0,
|
||||||
@ -183,7 +183,7 @@ pub async fn purge_orphan_assets() -> Result<PurgeOrphansResponse, ServerFnError
|
|||||||
|
|
||||||
Ok(PurgeOrphansResponse {
|
Ok(PurgeOrphansResponse {
|
||||||
success: true,
|
success: true,
|
||||||
message: format!("已清理 {} 张孤儿素材", deleted),
|
message: format!("已清理 {} 张未引用素材", deleted),
|
||||||
deleted_count: deleted as i64,
|
deleted_count: deleted as i64,
|
||||||
freed_bytes,
|
freed_bytes,
|
||||||
failures,
|
failures,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
//! 素材管理页面。
|
//! 素材管理页面。
|
||||||
//!
|
//!
|
||||||
//! 网格浏览 `uploads/` 已登记图片:搜索(文件名/alt)、引用状态筛选
|
//! 网格浏览 `uploads/` 已登记图片:搜索(文件名/alt)、引用状态筛选
|
||||||
//! (全部/引用中/孤儿)、排序(最新/最大)、客户端分页。
|
//! (全部/引用中/未引用)、排序(最新/最大)、客户端分页。
|
||||||
//! 缩略图直接复用 `serve_image` 的动态处理(`?thumb=300x300`),零额外成本。
|
//! 缩略图直接复用 `serve_image` 的动态处理(`?thumb=300x300`),零额外成本。
|
||||||
//!
|
//!
|
||||||
//! 缩略图采用与前台正文图一致的 `.blur-img` 双层结构(`?w=20` 占位 + `data-src`
|
//! 缩略图采用与前台正文图一致的 `.blur-img` 双层结构(`?w=20` 占位 + `data-src`
|
||||||
@ -164,13 +164,13 @@ pub fn Assets() -> Element {
|
|||||||
div {
|
div {
|
||||||
h1 { class: "text-3xl font-extrabold tracking-tight mb-2", "素材管理" }
|
h1 { class: "text-3xl font-extrabold tracking-tight mb-2", "素材管理" }
|
||||||
p { class: "text-sm text-[var(--color-paper-secondary)] mb-8",
|
p { class: "text-sm text-[var(--color-paper-secondary)] mb-8",
|
||||||
"管理文章编辑器上传的图片。共 {all_count} 张,引用中 {used_count} 张,孤儿 {orphan_count} 张。"
|
"管理文章编辑器上传的图片。共 {all_count} 张,引用中 {used_count} 张,未引用 {orphan_count} 张。"
|
||||||
}
|
}
|
||||||
|
|
||||||
// 顶栏:筛选 tabs + 搜索 + 排序
|
// 顶栏:筛选 tabs + 搜索 + 排序
|
||||||
div { class: "flex flex-wrap items-end justify-between gap-4",
|
div { class: "flex flex-wrap items-end justify-between gap-4",
|
||||||
FilterTabs {
|
FilterTabs {
|
||||||
items: vec![("all", "全部"), ("used", "引用中"), ("orphan", "孤儿")],
|
items: vec![("all", "全部"), ("used", "引用中"), ("orphan", "未引用")],
|
||||||
active_value: filter(),
|
active_value: filter(),
|
||||||
on_change: move |v: String| {
|
on_change: move |v: String| {
|
||||||
filter.set(v);
|
filter.set(v);
|
||||||
@ -250,7 +250,7 @@ pub fn Assets() -> Element {
|
|||||||
..
|
..
|
||||||
}) => {
|
}) => {
|
||||||
let mut msg = format!(
|
let mut msg = format!(
|
||||||
"已清理 {} 张孤儿素材,释放 {}",
|
"已清理 {} 张未引用素材,释放 {}",
|
||||||
deleted_count,
|
deleted_count,
|
||||||
format_bytes(freed_bytes)
|
format_bytes(freed_bytes)
|
||||||
);
|
);
|
||||||
@ -281,7 +281,7 @@ pub fn Assets() -> Element {
|
|||||||
class: "text-xs font-medium cursor-pointer px-3 py-2 rounded-full border border-amber-500/50 text-amber-600 dark:text-amber-400 hover:bg-amber-500/10 transition-colors",
|
class: "text-xs font-medium cursor-pointer px-3 py-2 rounded-full border border-amber-500/50 text-amber-600 dark:text-amber-400 hover:bg-amber-500/10 transition-colors",
|
||||||
title: "仅清理无引用且上传超过 7 天的素材(保护未保存的草稿)",
|
title: "仅清理无引用且上传超过 7 天的素材(保护未保存的草稿)",
|
||||||
onclick: move |_| purge_confirm.set(true),
|
onclick: move |_| purge_confirm.set(true),
|
||||||
"清理孤儿({purgeable_count} 张 · {format_bytes(purgeable_bytes)})"
|
"清理未引用({purgeable_count} 张 · {format_bytes(purgeable_bytes)})"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -351,7 +351,7 @@ pub fn Assets() -> Element {
|
|||||||
span {
|
span {
|
||||||
class: "{badge_class}",
|
class: "{badge_class}",
|
||||||
if is_orphan {
|
if is_orphan {
|
||||||
"孤儿"
|
"未引用"
|
||||||
} else {
|
} else {
|
||||||
"被 {asset.ref_count} 篇引用"
|
"被 {asset.ref_count} 篇引用"
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user