From adde4d671efd6b6b777b8203c55d6a0aa0378a1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E5=89=8D=E6=98=8E?= <909355014@qq.com> Date: Wed, 6 Jul 2022 18:45:22 +0800 Subject: [PATCH] =?UTF-8?q?ecm=20handle=20=E6=9D=83=E9=99=90=E5=8E=BB?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/ecm/views.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/ecm/views.py b/apps/ecm/views.py index a7f214c3..ece10490 100644 --- a/apps/ecm/views.py +++ b/apps/ecm/views.py @@ -44,10 +44,12 @@ class AlgoChannelViewSet(CreateModelMixin, DestroyModelMixin, ListModelMixin, Cu serializer = AlgoChannelCreatesSerializer(data=request.data) serializer.is_valid(raise_exception=True) vdata = serializer.validated_data - acs = [] for i in vdata['vchannels']: - acs.append(AlgoChannel(id=idWorker.get_id(), algo=vdata['algo'], vchannel=i)) - AlgoChannel.objects.bulk_create(objs=acs, ignore_conflicts=True) + AlgoChannel.objects.get_or_create(algo=vdata['algo'], vchannel=i, + defaults={ + "algo": vdata['algo'], + "vchannel": i + }) return Response() @@ -66,7 +68,7 @@ class EventViewSet(ListModelMixin, RetrieveModelMixin, CustomGenericViewSet): filterset_fields = ['cates'] @transaction.atomic - @action(methods=['post'], detail=True, perms_map={'post': 'event:handle'}, + @action(methods=['post'], detail=True, perms_map={'post': '*'}, serializer_class=EventHandleSerializer) def handle(self, request, pk=None): """处理事件