修复数组不能同时增加多个元素
parent
227e1393a4
commit
0b62f401f0
|
@ -170,14 +170,21 @@ class SystemConfigViewSet(CustomModelViewSet):
|
||||||
|
|
||||||
def save_content(self, request):
|
def save_content(self, request):
|
||||||
body = request.data
|
body = request.data
|
||||||
data_mapping = {item['id']: item for item in body}
|
data_mapping = {item['id']: item for item in body if item['id'] is not None}
|
||||||
|
create_list = list()
|
||||||
for obj_id, data in data_mapping.items():
|
for obj_id, data in data_mapping.items():
|
||||||
instance_obj = SystemConfig.objects.filter(id=obj_id).first()
|
instance_obj = SystemConfig.objects.filter(id=obj_id).first()
|
||||||
if instance_obj is None:
|
if instance_obj is None:
|
||||||
# return SystemConfig.objects.create(**data)
|
# return SystemConfig.objects.create(**data)
|
||||||
serializer = SystemConfigCreateSerializer(data=data)
|
# serializer = SystemConfigCreateSerializer(data=data)
|
||||||
|
create_list.append(data)
|
||||||
else:
|
else:
|
||||||
serializer = SystemConfigCreateSerializer(instance_obj, data=data)
|
serializer = SystemConfigCreateSerializer(instance_obj, data=data)
|
||||||
|
if serializer.is_valid(raise_exception=True):
|
||||||
|
serializer.save()
|
||||||
|
create_list += [item for item in body if item['id'] is None]
|
||||||
|
for data in create_list:
|
||||||
|
serializer = SystemConfigCreateSerializer(data=data)
|
||||||
if serializer.is_valid(raise_exception=True):
|
if serializer.is_valid(raise_exception=True):
|
||||||
serializer.save()
|
serializer.save()
|
||||||
websocket_push("dvadmin", message={"sender": 'system', "contentType": 'SYSTEM',
|
websocket_push("dvadmin", message={"sender": 'system', "contentType": 'SYSTEM',
|
||||||
|
|
Loading…
Reference in New Issue