提交 a802fb79 编写于 作者: B Bai 提交者: Jiangjie.Bai

fix: 修复资产导入携带disk_info信息时失败的问题

上级 1646f9b2
import abc import abc
import json import json
import codecs import codecs
from rest_framework import serializers
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from rest_framework.parsers import BaseParser from rest_framework.parsers import BaseParser
from rest_framework import status from rest_framework import status
...@@ -83,14 +84,17 @@ class BaseFileParser(BaseParser): ...@@ -83,14 +84,17 @@ class BaseFileParser(BaseParser):
new_row.append(col) new_row.append(col)
return new_row return new_row
@staticmethod def process_row_data(self, row_data):
def process_row_data(row_data):
""" """
构建json数据后的行数据处理 构建json数据后的行数据处理
""" """
new_row_data = {} new_row_data = {}
serializer_fields = self.serializer_cls().fields
for k, v in row_data.items(): 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(): 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 new_row_data[k] = v
return new_row_data return new_row_data
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册