Skip to content

Commit 1448927

Browse files
committed
feat: add ToolFolderFlatSerializer for flat folder serialization in Tool API
1 parent 4e77ebc commit 1448927

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

apps/tools/serializers/tool.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from common.utils.tool_code import ToolExecutor
1919
from maxkb.const import CONFIG
2020
from tools.models import Tool, ToolScope, ToolFolder
21-
from tools.serializers.tool_folder import ToolFolderTreeSerializer
21+
from tools.serializers.tool_folder import ToolFolderFlatSerializer
2222

2323
tool_executor = ToolExecutor(CONFIG.get('SANDBOX'))
2424

@@ -333,7 +333,7 @@ def get_tools(self, folder_id):
333333

334334
# 获取当前文件夹下的直接子文件夹
335335
child_folders = ToolFolder.objects.filter(parent=current_folder)
336-
folders_data = ToolFolderTreeSerializer(child_folders, many=True).data
336+
folders_data = ToolFolderFlatSerializer(child_folders, many=True).data
337337

338338
# 获取当前文件夹下的工具
339339
tools = QuerySet(Tool).filter(Q(workspace_id=self.data.get('workspace_id')) &

apps/tools/serializers/tool_folder.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,11 @@ class Meta:
1414

1515
def get_children(self, obj):
1616
return ToolFolderTreeSerializer(obj.get_children(), many=True).data
17+
18+
19+
class ToolFolderFlatSerializer(serializers.ModelSerializer):
20+
"""只序列化当前层的文件夹,不包含子节点"""
21+
22+
class Meta:
23+
model = ToolFolder
24+
fields = ['id', 'name', 'user_id', 'workspace_id', 'parent_id']

0 commit comments

Comments
 (0)