File tree Expand file tree Collapse file tree 3 files changed +7
-0
lines changed
models_provider/serializers Expand file tree Collapse file tree 3 files changed +7
-0
lines changed Original file line number Diff line number Diff line change @@ -384,6 +384,7 @@ def delete(self):
384384 QuerySet (ProblemParagraphMapping ).filter (knowledge = knowledge ).delete ()
385385 QuerySet (Paragraph ).filter (knowledge = knowledge ).delete ()
386386 QuerySet (Problem ).filter (knowledge = knowledge ).delete ()
387+ QuerySet (WorkspaceUserResourcePermission ).filter (target = knowledge .id ).delete ()
387388 knowledge .delete ()
388389 delete_embedding_by_knowledge (self .data .get ('knowledge_id' ))
389390 return True
Original file line number Diff line number Diff line change 77
88import uuid_utils .compat as uuid
99from django .core .cache import cache
10+ from django .db import transaction
1011from django .db .models import QuerySet
1112from django .utils .translation import gettext_lazy as _
1213from rest_framework import serializers
@@ -160,11 +161,15 @@ def pause_download(self, with_valid=True):
160161 QuerySet (Model ).filter (id = self .data .get ('id' )).update (status = Status .PAUSE_DOWNLOAD )
161162 return True
162163
164+ @transaction .atomic
163165 def delete (self , with_valid = True ):
164166 if with_valid :
165167 super ().is_valid (raise_exception = True )
166168 model_id = self .data .get ('id' )
167169 model = Model .objects .filter (id = model_id ).first ()
170+ if model is None :
171+ return True
172+ QuerySet (WorkspaceUserResourcePermission ).filter (target = model_id ).delete ()
168173 # TODO : 这里可以添加模型删除的逻辑,需要注意删除模型时的权限和关联关系
169174 # if model.model_type == 'LLM':
170175 # application_count = Application.objects.filter(model_id=model_id).count()
Original file line number Diff line number Diff line change @@ -336,6 +336,7 @@ def delete(self):
336336 tool = QuerySet (Tool ).filter (id = self .data .get ('id' )).first ()
337337 if tool .template_id is None and tool .icon != '/ui/favicon.ico' :
338338 QuerySet (File ).filter (id = tool .icon .split ('/' )[- 1 ]).delete ()
339+ QuerySet (WorkspaceUserResourcePermission ).filter (target = tool .id ).delete ()
339340 QuerySet (Tool ).filter (id = self .data .get ('id' )).delete ()
340341
341342 def one (self ):
You can’t perform that action at this time.
0 commit comments