Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
猿小天
2023-12-27 23:29:22 +08:00

View File

@@ -5,6 +5,7 @@ from rest_framework import serializers
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'application.settings') os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'application.settings')
import django import django
django.setup() django.setup()
from dvadmin.system.models import ( from dvadmin.system.models import (
Role, Dept, Users, Menu, MenuButton, Role, Dept, Users, Menu, MenuButton,
@@ -63,6 +64,7 @@ class MenuFieldInitSerializer(CustomModelSerializer):
fields = ['id', 'menu', 'field_name', 'title', 'model'] fields = ['id', 'menu', 'field_name', 'title', 'model']
read_only_fields = ["id"] read_only_fields = ["id"]
class MenuInitSerializer(CustomModelSerializer): class MenuInitSerializer(CustomModelSerializer):
""" """
递归深度获取数信息(用于生成初始化json文件) 递归深度获取数信息(用于生成初始化json文件)
@@ -71,6 +73,7 @@ class MenuInitSerializer(CustomModelSerializer):
children = serializers.SerializerMethodField() children = serializers.SerializerMethodField()
menu_button = serializers.SerializerMethodField() menu_button = serializers.SerializerMethodField()
menu_field = serializers.SerializerMethodField() menu_field = serializers.SerializerMethodField()
def get_children(self, obj: Menu): def get_children(self, obj: Menu):
data = [] data = []
instance = Menu.objects.filter(parent_id=obj.id) instance = Menu.objects.filter(parent_id=obj.id)
@@ -132,7 +135,8 @@ class MenuInitSerializer(CustomModelSerializer):
field_data['menu'] = instance.id field_data['menu'] = instance.id
filter_data = { filter_data = {
'menu': field_data['menu'], 'menu': field_data['menu'],
'field_name':field_data['field_name'] 'field_name': field_data['field_name'],
'model': field_data['model']
} }
instance_obj = MenuField.objects.filter(**filter_data).first() instance_obj = MenuField.objects.filter(**filter_data).first()
serializer = MenuFieldInitSerializer(instance_obj, data=field_data, request=self.request) serializer = MenuFieldInitSerializer(instance_obj, data=field_data, request=self.request)