From 3c017e2ad498ef965323fc6c93ddac0cc99d0843 Mon Sep 17 00:00:00 2001 From: XingQue Date: Sat, 25 Jul 2026 20:52:09 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=9C=AA=E4=B8=8A=E4=BC=A0=E7=9A=84?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=9E=8B=E5=A4=A7=E8=83=8C=E6=99=AF=E5=90=8E?= =?UTF-8?q?=E5=8F=B0=E5=88=97=E8=A1=A8=E4=B8=8D=E5=86=8D=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=81=87=E9=BB=98=E8=AE=A4=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 避免图标管理预览 404,并明确 is_uploaded 状态,方便前端展示上传按钮。 Co-authored-by: Cursor --- jituan/views_miniapp_assets.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/jituan/views_miniapp_assets.py b/jituan/views_miniapp_assets.py index 2b9ef12..1f8ee9a 100644 --- a/jituan/views_miniapp_assets.py +++ b/jituan/views_miniapp_assets.py @@ -12,6 +12,7 @@ from jituan.services.club_context import resolve_effective_club_id from jituan.services.display_config import forbid_display_write_in_all_scope, list_response_meta from jituan.services.miniapp_assets import ( ICON_FOLDER, + CONFIG_ONLY_DELIVERY_KEYS, MINIAPP_ICON_LABELS, MINIAPP_ICON_META, POSTER_FOLDER, @@ -49,13 +50,21 @@ class ClubMiniappIconListView(APIView): items = [] for key, label in MINIAPP_ICON_META: row = icons_db.get(key) + uploaded = bool(row and row.is_uploaded and (row.image_path or '').strip()) + if uploaded: + image_path = row.image_path.strip() + elif key in CONFIG_ONLY_DELIVERY_KEYS: + # 未上传的大背景不回默认路径,避免后台预览 404、误以为已配置 + image_path = '' + else: + image_path = (row.image_path if row else '') or default_icon_path(key) items.append({ 'icon_key': key, 'label': label, - 'image_path': (row.image_path if row else '') or default_icon_path(key), + 'image_path': image_path, 'description': (row.description if row else '') or '', 'is_active': row.is_active if row else True, - 'is_uploaded': row.is_uploaded if row else False, + 'is_uploaded': uploaded, 'id': row.id if row else None, }) return Response({