Форум сайта python.su
Здравствуйте!
Необходимо чтобы была возможность загрузить с сайта excel файл, чтобы затем заполнить базу данных из него.
Подскажите пожалуйста как это можно реализовать.
Уже и xlrd пользовался и import-export и django-excel, в любом случае захожу в тупик и ничего не работает.
Желательно пояснить на реальном примере.
Заранее спасибо!
Офлайн
kinvainerПодробные реальные примеры есть в документации по этим пакетам. Это вы покажите где вы умудрились в тупик зайти. Приведите пример кода, напишите что вы хотели получить, что получили.
Желательно пояснить на реальном примере.
Офлайн
doza_and
Сам офигел, но xlrd читает и xlsx
Офлайн
doza_and
def upload_file(request):
if request.method == ‘POST’:
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
w = form.sheet_by_index(0)
s = CadetsSubject(cadet = Cadets.objects.get(id=1), subject = Subject.objects.get(id=1), month = Month.objects.get(id=1),mark = w.cell(1,1).value)
s.save()
handle_uploaded_file(request.FILES)
return HttpResponseRedirect('/table/')
Вот фрагмент кода из views.py.
Как я понял он даже не проходит условие с is_valid, ни ошибок, ничего.
В целом суть в том что необходимо делать ежемесячную аттестацию по студентам и естественно все это через excel.
Офлайн
4kpt_IVОго! Обязательно попробую, как только у меня появится хоть один xlsx файл :)
Сам офигел, но xlrd читает и xlsx
Офлайн
doza_and
Тебя так же дружище. Интересных встреч, задач и много-много неиссякаемых финансовых потоков
P.S. kinvainer
Ссори за оффтоп
Офлайн
Т.е. Вам нужно создать excel - файл, я правильно понял?
Офлайн
> В целом суть в том что необходимо делать ежемесячную аттестацию по студентам и естественно все это через excel.
excel умеет сохранять таблицы в CSV, его и используй.
Онлайн
Rodegast
СSV так себе вариант - не поддерживает русскую кириллицу.
4kpt_IV
Есть готовый файл: в первом столбце фамилии, в первой строке учебные предметы, а перекрестие это оценка.
Вот и нужно чтобы пользователь мог загрузить этот файл, а django уже считал в базу данных.
Офлайн
> не поддерживает русскую кириллицу
С чего ты это взял? Он прекрасно всё поддерживает.
Онлайн