From 88c989abdf3be3ea6673bf81c8fcee78b5545170 Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Mon, 22 Jun 2026 15:04:50 +0800 Subject: [PATCH] =?UTF-8?q?data=5Ffilter=E5=AD=98=E5=9C=A8=E6=97=B6?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=B3=A8=E5=85=A5=E6=90=9C=E7=B4=A2=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E5=88=B0toolbar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- xls2ddl/xls2crud.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/xls2ddl/xls2crud.py b/xls2ddl/xls2crud.py index 2cd359f..aa882f0 100644 --- a/xls2ddl/xls2crud.py +++ b/xls2ddl/xls2crud.py @@ -351,6 +351,17 @@ def build_data_browser(pat: str, desc: dict): desc.fieldliststr = json.dumps(field_list(desc), ensure_ascii=False, indent=4) desc.filter_fields = build_filter_field_list(desc) desc.filterfieldstr = json.dumps(desc.filter_fields, ensure_ascii=False, indent=4) + # 有 data_filter 时自动注入搜索按钮 + if desc.data_filter: + toolbar = desc.get('toolbar', None) + if not toolbar: + toolbar = {'tools': []} + desc.toolbar = toolbar + tools = toolbar.get('tools', []) + # 确保 filter 按钮在最前面且不重复 + tools = [t for t in tools if t.get('name') != 'filter'] + tools.insert(0, {'name': 'filter', 'label': '搜索', 'icon': 'filter'}) + toolbar['tools'] = tools e = MyTemplateEngine([]) s = e.renders(data_browser_tmpl, desc) with codecs.open(os.path.join(pat, f'index.ui'), 'w', "utf-8") as f: