From 6067dfac2f9a1b459c65fe1dfec94a54b833734a Mon Sep 17 00:00:00 2001 From: ahhui Date: Thu, 3 Aug 2023 18:01:49 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E8=8F=9C=E5=8D=95):=20=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=96=B0=E5=A2=9E=E8=8F=9C=E5=8D=95=E6=97=B6=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=E9=94=99=E8=AF=AF=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/dvadmin/system/views/menu.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/backend/dvadmin/system/views/menu.py b/backend/dvadmin/system/views/menu.py index 63077e5..f0765f2 100644 --- a/backend/dvadmin/system/views/menu.py +++ b/backend/dvadmin/system/views/menu.py @@ -10,6 +10,7 @@ from rest_framework import serializers from rest_framework.decorators import action from dvadmin.system.models import Menu, RoleMenuPermission +from dvadmin.system.views.menu_button import MenuButtonSerializer from dvadmin.utils.json_response import SuccessResponse, ErrorResponse from dvadmin.utils.serializers import CustomModelSerializer from dvadmin.utils.viewset import CustomModelViewSet @@ -23,7 +24,8 @@ class MenuSerializer(CustomModelSerializer): hasChild = serializers.SerializerMethodField() def get_menuPermission(self, instance): - queryset = instance.menuPermission.order_by('-name').values_list('name', flat=True) + queryset = instance.menuPermission.order_by('-name').values('id', 'name', 'value') + # MenuButtonSerializer(instance.menuPermission.all(), many=True) if queryset: return queryset else: @@ -47,6 +49,11 @@ class MenuCreateSerializer(CustomModelSerializer): """ name = serializers.CharField(required=False) + def create(self, validated_data): + last_sort = Menu.objects.filter(parent_id=validated_data.get('parent', None)).order_by('-sort').first().sort + validated_data['sort'] = last_sort + 1 + return super().create(validated_data) + class Meta: model = Menu fields = "__all__"