При попытке импортировать некоторые данные в мою модель возникает ошибка. Ошибка, которую я получаю, это TypeError: жалуюсь на разделитель, который я использую.Django-Adapters TypeError: «разделитель» должен быть 1-символьной строкой
Ниже приведена моя модель импорта CSV. Я использую разделитель по умолчанию, предложенный в документации.
class SkuCsvModel(CsvModel):
sku_num = models.CharField()
sku_category = models.ForeignKey(SkuCategory)
short_desc = models.CharField()
class Meta:
delimiter = ";"
dbModel = Sku
Файл CSV Я пытаюсь использовать ниже:
1365400;9;3/8 BALL VALVE
1401901;9;BRASS ELBOW
1406300;9;HOSE BARB, NPT
Код я тестирую в manage.py оболочки:
>>> from core.models import SkuCsvModel
>>> my_csv_list = SkuCsvModel.import_data(data = open("labconco.csv"))
И, наконец, ошибка, которую я получаю:
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "E:\bin\Python27\lib\site-packages\adaptor\model.py", line 197, in import_data
return importer.import_data(data)
File "E:\bin\Python27\lib\site-packages\adaptor\model.py", line 466, in import_data
for line in csv.reader(data, delimiter=self.delimiter):
TypeError: "delimiter" must be an 1-character string
Так что я был fi ddling вокруг с инструментами django-адаптера, и эта ошибка исходит из метода import_data() CsvImporter, когда я пытаюсь помещать разделитель непосредственно в csv.reader (data, delimiter = ';'), это отлично работает и Я могу видеть файл правильно. Но как бы я ни старался и не вводил этот метод import_data, отправляющий в ';' будет генерировать ошибку.