mirror of https://github.com/jumpserver/jumpserver
[Update] 解决csv导入导出的问题
parent
49632241b6
commit
9721b805f3
|
@ -3,6 +3,7 @@
|
|||
|
||||
import json
|
||||
import chardet
|
||||
import codecs
|
||||
import unicodecsv
|
||||
|
||||
from rest_framework.parsers import BaseParser
|
||||
|
@ -82,6 +83,7 @@ class JMSCSVParser(BaseParser):
|
|||
|
||||
try:
|
||||
stream_data = stream.read()
|
||||
stream_data = stream_data.strip(codecs.BOM_UTF8)
|
||||
detect_result = chardet.detect(stream_data)
|
||||
encoding = detect_result.get("encoding", "utf-8")
|
||||
binary = self._universal_newlines(stream_data)
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#
|
||||
|
||||
import unicodecsv
|
||||
import codecs
|
||||
from datetime import datetime
|
||||
|
||||
from six import BytesIO
|
||||
|
@ -73,7 +74,8 @@ class JMSCSVRender(BaseRenderer):
|
|||
table = self._gen_table(data, header, labels)
|
||||
|
||||
csv_buffer = BytesIO()
|
||||
csv_writer = unicodecsv.writer(csv_buffer, encoding='utf-8-sig')
|
||||
csv_buffer.write(codecs.BOM_UTF8)
|
||||
csv_writer = unicodecsv.writer(csv_buffer, encoding='utf-8')
|
||||
for row in table:
|
||||
csv_writer.writerow(row)
|
||||
|
||||
|
|
Loading…
Reference in New Issue