MCPcopy
hub / github.com/1Panel-dev/MaxKB / delete_source

Method delete_source

apps/folders/serializers/folder.py:280–302  ·  view source on GitHub ↗
(self, node)

Source from the content-addressed store, hash-verified

278 node.delete()
279
280 def delete_source(self, node):
281 Source = get_source_type(self.data.get('source')) # noqa
282 source_ids = Source.objects.filter(folder_id=node.id).values_list('id', flat=True)
283 source = self.data.get('source')
284
285 for source_id in source_ids:
286 if source == Group.TOOL.name:
287 ToolSerializer.Operate(data={
288 'workspace_id': self.data.get('workspace_id'),
289 'id': source_id,
290 }).delete()
291 elif source == Group.APPLICATION.name:
292 ApplicationOperateSerializer(data={
293 'workspace_id': self.data.get('workspace_id'),
294 'application_id': source_id,
295 'user_id': self.data.get('user_id'),
296 }).delete()
297 elif source == Group.KNOWLEDGE.name:
298 KnowledgeSerializer.Operate(data={
299 'workspace_id': self.data.get('workspace_id'),
300 'knowledge_id': source_id,
301 'user_id': self.data.get('user_id'),
302 }).delete()
303
304
305class FolderTreeSerializer(serializers.Serializer):

Callers 1

deleteMethod · 0.95

Calls 4

get_source_typeFunction · 0.85
getMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected