refactor: update default icon path in tool models and related logic

This commit is contained in:
CaptainB 2025-07-03 15:10:08 +08:00
parent bd8424ae8b
commit e0075c3dd5
3 changed files with 5 additions and 5 deletions

View File

@ -57,7 +57,7 @@ class Migration(migrations.Migration):
('code', models.CharField(max_length=102400, verbose_name='python代码')),
('input_field_list', models.JSONField(default=list, verbose_name='输入字段列表')),
('init_field_list', models.JSONField(default=list, verbose_name='启动字段列表')),
('icon', models.CharField(default='/ui/favicon.ico', max_length=256, verbose_name='工具库icon')),
('icon', models.CharField(default='', max_length=256, verbose_name='工具库icon')),
('is_active', models.BooleanField(default=True)),
('scope', models.CharField(choices=[('SHARED', '共享'), ('WORKSPACE', '工作空间可用'), ('INTERNAL', '内置')], default='WORKSPACE', max_length=20, verbose_name='可用范围')),
('tool_type', models.CharField(choices=[('INTERNAL', '内置'), ('CUSTOM', '自定义')], db_index=True, default='CUSTOM', max_length=20, verbose_name='工具类型')),

View File

@ -41,7 +41,7 @@ class Tool(AppModelMixin):
code = models.CharField(max_length=102400, verbose_name="python代码")
input_field_list = models.JSONField(verbose_name="输入字段列表", default=list)
init_field_list = models.JSONField(verbose_name="启动字段列表", default=list)
icon = models.CharField(max_length=256, verbose_name="工具库icon", default="/ui/favicon.ico")
icon = models.CharField(max_length=256, verbose_name="工具库icon", default="")
is_active = models.BooleanField(default=True)
scope = models.CharField(max_length=20, verbose_name='可用范围', choices=ToolScope.choices,
default=ToolScope.WORKSPACE)

View File

@ -326,7 +326,7 @@ class ToolSerializer(serializers.Serializer):
def delete(self):
self.is_valid(raise_exception=True)
tool = QuerySet(Tool).filter(id=self.data.get('id')).first()
if tool.template_id is None and tool.icon != '/ui/favicon.ico':
if tool.template_id is None and tool.icon != '':
QuerySet(File).filter(id=tool.icon.split('/')[-1]).delete()
QuerySet(WorkspaceUserResourcePermission).filter(target=tool.id).delete()
QuerySet(Tool).filter(id=self.data.get('id')).delete()
@ -426,10 +426,10 @@ class ToolSerializer(serializers.Serializer):
if tool is None:
raise AppApiException(500, _('Function does not exist'))
# 删除旧的图片
if tool.icon != '/ui/favicon.ico':
if tool.icon != '':
QuerySet(File).filter(id=tool.icon.split('/')[-1]).delete()
if self.data.get('image') is None:
tool.icon = '/ui/favicon.ico'
tool.icon = ''
else:
meta = {
'debug': False