From d1901ba7a71e567f0453f54720d32805c17e9023 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E5=89=8D=E6=98=8E?= <909355014@qq.com> Date: Tue, 28 Jun 2022 17:34:31 +0800 Subject: [PATCH] rpj member create bug --- apps/rpm/serializers.py | 9 ++++++--- apps/utils/exceptions.py | 4 +++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/rpm/serializers.py b/apps/rpm/serializers.py index 36a3273a..81bde9bd 100644 --- a/apps/rpm/serializers.py +++ b/apps/rpm/serializers.py @@ -156,12 +156,13 @@ class RpjmemberCreateSerializer(CustomModelSerializer): rpjc = Rpjcertificate() rpjc.rpj_member = ins rpjc.rcertificate = x - for f in Rpjcertificate._meta.fields: + # for i in ['name', 'number', 'type', 'issue_date', 'expiration_date', 'review_date', 'file']: + for f in Rcertificate._meta.fields: if f.name not in ['id']: setattr(rpjc, f.name, getattr(x, f.name, None)) rpjc.save() if ins.is_manager: - Rpjmember.objects.exclude(id__in=ins.id).update(is_manager=False) + Rpjmember.objects.exclude(id=ins.id).update(is_manager=False) return ins @@ -187,10 +188,12 @@ class RpjmemberUpdateSerializer(CustomModelSerializer): rpjc = Rpjcertificate() rpjc.rpj_member = ins rpjc.rcertificate = x - for f in Rpjcertificate._meta.fields: + for f in Rcertificate._meta.fields: if f.name not in ['id']: setattr(rpjc, f.name, getattr(x, f.name, None)) rpjc.save() + if ins.is_manager: + Rpjmember.objects.exclude(id=ins.id).update(is_manager=False) return ins diff --git a/apps/utils/exceptions.py b/apps/utils/exceptions.py index f7c0c514..41affb4f 100755 --- a/apps/utils/exceptions.py +++ b/apps/utils/exceptions.py @@ -41,4 +41,6 @@ def custom_exception_hander(exc, context): return Response(data, status=exc.status_code, headers=headers) args = (request_id, traceback.format_exc()) myLogger.error(f"{args[0]}-{args[1]}") - return Response(data={'err_code': 'server_error', 'err_msg': '服务器错误', 'request_id': request_id}, status=500) + return Response(data={'err_code': 'server_error', + 'err_detail': traceback.format_exc(), + 'err_msg': '服务器错误', 'request_id': request_id}, status=500)