У меня проблема с загрузкой данных из Excel в базу данных с использованием Django. Когда эта функция запускается, предполагается, что данные в указанном диапазоне будут получены и загружены в базу данных при запуске q.save.
def scrapeExcel(excel):
uploadQuery = []
wb = load_workbook(excel)
for sheet in wb.worksheets:
last_row = sheet.max_row
if sheet == wb.worksheets[0]:
fullName = sheet.cell(row = 16, column = 4).value
for row in sheet.iter_rows(min_row = 20, max_row = last_row - 1):
curRow = []
for cell in row:
curRow.append(cell.value)
uploadQuery.append(
time(
file = excel,
fullname = fullName,
cdate = get_date(curRow[3]),
dayname = curRow[4],
units = curRow[9],
submitteddate = get_date(curRow[11]),
approveddate = get_date(curRow[15]),
project = curRow[21],
name = curRow[22],
comment = curRow[25],
locationname = curRow[26],
status = 1
)
)
for q in uploadQuery:
q.save()
Когда я запускаю это, я получаю следующую ошибку.
TypeError: expected string or bytes-like object
Когда я проверял каждое значение с помощью print или sys.stderr.write, я знал, что они получают правильное значение. Но внутри for l oop, если я проверю, что такое q, с
for q in uploadQuery:
sys.stderr.write(' query--{} '.format(q))
q.save()
он просто говорит
query--time Object (none)
Итак, я предполагаю, что он не добавляется к uploadQuery ? или это неправильный способ перебора uploadQuery для сохранения?
Заранее спасибо!