У меня есть файл CSV, содержащий данные, имеет следующие заголовки столбцов: first_name
, last_name
и email
. Я хотел бы проверить, что файл CSV в том, что он должен иметь столбцы, упорядоченные в порядке, указанном выше. Я реализовал код, но проблема заключается в получении заголовков столбцов. Причина, по которой я настаиваю на проверке этого порядка, заключается в том, что я создаю объекты пациента, которые имеют поля firstname
, lastname
и email
в качестве полей, и если CSV-файл будет переупорядочен, то неправильные данные будут добавлены в поля.
if file_serializer.is_valid():
data = self.request.data.get('file')
data_set = data.read().decode('UTF-8')
io_string = io.StringIO(data_set)
io_string = io.StringIO(data_set)
next(io_string)
for column in csv.reader(io_string, delimiter=',', quotechar="|"):
# Add validation here
print(column)
obj, created = Patient.objects.get_or_create(
firstname=column[0],
lastname=column[1],
email=column[2]
)
CSV скриншот
Образец текста
first_name,last_name,email
Shaylynn,Klimentyev,sklimentyev0@cisco.com
Thaddeus,Grushin,tgrushin1@umn.edu
Hayden,Cranmer,hcranmer2@nationalgeographic.com
Colet,Ferfulle,cferfulle3@unesco.org
Ernestine,Hardi,ehardi4@virginia.edu
Freddi,Knagges,fknagges5@ifeng.com