- 修改 settings,添加以下代码,其中 FolderStorage 是重写的文件处理类,以及路径自定义
IMPORT_EXPORT_TMP_STORAGE_CLASS = 'common.storages.FolderStorage'
- 创建
storages
文件以及 FolderStorage 类
import tempfile
from import_export.tmp_storages import TempFolderStorage
class FolderStorage(TempFolderStorage):
def __init__(self):
super(FolderStorage, self).__init__()
def open(self, mode='r'):
if self.name:
try:
open(self.get_full_path(), mode, encoding='gbk').read()
return open(self.get_full_path(), mode, encoding='gbk')
except UnicodeDecodeError:
open(self.get_full_path(), mode, encoding='utf-8')
return open(self.get_full_path(), mode, encoding='utf-8')
else:
tmp_file = tempfile.NamedTemporaryFile(delete=False)
self.name = tmp_file.name
return tmp_file