Django, pandas, excel: загрузка файлов, их разбор с помощью pandas в Django
У меня есть большой скрипт командной строки для разбора данных в Excel (с помощью pandas), и я хочу обернуть его в Django. Я пробовал и загружать файлы через request.FILES, и через pandas, но застрял на загрузке файла и, например, на его сохранении (не обязательно, а просто для проверки загрузки).
У меня не было проблем с другими приложениями на Django, которые не требовали загрузки и парсинга чего-либо внешнего, и я думал, что это будет намного проще...:)
Я также пробовал перенаправлять, на самом деле не работает, единственное перенаправление, которое действительно происходит, это действие в теге формы...
Вот фрагменты кода:
views.py:
def uploads(request):
if request.method == 'POST':
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
excel_file = request.FILES['document']
excel_file.save()
return render(request, 'index.html')
else:
form = DocumentForm()
return render(request, 'index.html', {'form': form})
models.py
class Document(models.Model):
document = models.FileField(upload_to="files/")
forms.py:
class DocumentForm(forms.ModelForm):
class Meta:
model = Document
fields = ('document', )
index.html:
<form
action="{% url 'reports'%}"
method="post"
enctype="multipart/form-data"
>
{% csrf_token %}
<span>
Upload .xlsx file <input type="file" name="document" />
</span>
<button type="submit">
SUBMIT
</button>
</form>
Я думаю, что вы должны сохранить содержимое формы на самом деле:
form.save()
Причина в том, что у меня была другая функция в views.py, ведущая к тому же url-маршруту.