From d52a7d4795c4f9ec6c64bee5131d6ee96c2ff0fc Mon Sep 17 00:00:00 2001 From: colaftc Date: Wed, 7 Jan 2026 19:24:40 +0800 Subject: [PATCH] fix: admin problems(open printing jobs slowly and frontend pages missing merchant field) --- basic_info/admin.py | 12 +++++++++--- printing/admin.py | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/basic_info/admin.py b/basic_info/admin.py index 62ca332..b516643 100644 --- a/basic_info/admin.py +++ b/basic_info/admin.py @@ -155,15 +155,21 @@ class EmployeeTypeAdmin(AdminBase): @admin.register(models.FrontendPage) -class FrontendPageAdmin(AdminBase): - """前端页面管理""" +class FrontendPageAdmin(admin.ModelAdmin): + """ + 前端页面管理 + + 注意:此模型不继承 AdminBase,因为 FrontendPage 是全局系统配置, + 不关联 merchant(商户)。 + """ list_display = ('key', 'label', 'page_type', 'parent', 'sort_order', 'is_active') list_filter = ('page_type', 'is_active', 'parent') search_fields = ('key', 'label') list_editable = ('sort_order', 'is_active') ordering = ('sort_order', 'id') + autocomplete_fields = ('parent',) # parent 也是 FrontendPage,支持自动完成 - def get_readonly_fields(self, request, obj=...): + def get_readonly_fields(self, request, obj=None): # key 字段创建后不可修改 if obj: return ['key'] diff --git a/printing/admin.py b/printing/admin.py index 813a6b0..957288c 100644 --- a/printing/admin.py +++ b/printing/admin.py @@ -180,6 +180,7 @@ class PrintingJobInline(admin.StackedInline): model = models.PrintingJob formset = PrintingJobInlineFormSet extra = 1 + autocomplete_fields = ('product',) # 避免加载所有产品导致页面卡死 @admin.register(models.PrintingOrder)