Compare commits

...

2 Commits
v4.4 ... v2.6.1

Author SHA1 Message Date
Bai
a802fb792f fix: 修复资产导入携带disk_info信息时失败的问题 2020-12-21 17:11:20 +08:00
Bai
1646f9b27b fix: 修复提交系统设置失败的问题 2020-12-21 14:29:48 +08:00
2 changed files with 7 additions and 3 deletions

View File

@@ -1,6 +1,7 @@
import abc
import json
import codecs
from rest_framework import serializers
from django.utils.translation import ugettext_lazy as _
from rest_framework.parsers import BaseParser
from rest_framework import status
@@ -83,14 +84,17 @@ class BaseFileParser(BaseParser):
new_row.append(col)
return new_row
@staticmethod
def process_row_data(row_data):
def process_row_data(self, row_data):
"""
构建json数据后的行数据处理
"""
new_row_data = {}
serializer_fields = self.serializer_cls().fields
for k, v in row_data.items():
if isinstance(v, list) or isinstance(v, dict) or isinstance(v, str) and k.strip() and v.strip():
# 解决类似disk_info为字符串的'{}'的问题
if not isinstance(v, str) and isinstance(serializer_fields[k], serializers.CharField):
v = str(v)
new_row_data[k] = v
return new_row_data

View File

@@ -62,7 +62,7 @@ class TerminalSettingSerializer(serializers.Serializer):
)
TERMINAL_PASSWORD_AUTH = serializers.BooleanField(required=False)
TERMINAL_PUBLIC_KEY_AUTH = serializers.BooleanField(required=False)
TERMINAL_HEARTBEAT_INTERVAL = serializers.IntegerField(min_value=5, max_value=99999, required=True)
TERMINAL_HEARTBEAT_INTERVAL = serializers.IntegerField(min_value=5, max_value=99999, required=False)
TERMINAL_ASSET_LIST_SORT_BY = serializers.ChoiceField(SORT_BY_CHOICES, required=False)
TERMINAL_ASSET_LIST_PAGE_SIZE = serializers.ChoiceField(PAGE_SIZE_CHOICES, required=False)
TERMINAL_SESSION_KEEP_DURATION = serializers.IntegerField(min_value=1, max_value=99999, required=True)