Я пытаюсь сделать функцию, которая позволила бы пользователю загружать файл.Этот файл будет содержать информацию для вставки в базу данных, поэтому в функции я сохраняю данные.Не уверен, что это лучший вариант.
То, что я уже сделал:
forms.py:
class UploadFileForm(forms.Form):
file = forms.FileField()
просмотров:
def last_step(request, word):
if request.method == 'POST':
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
msg = handle_uploaded_file(word, request.FILES['file'])
return render_to_response('final_insert.html', {'msg': msg})
else:
form = UploadFileForm()
return render_to_response('upload.html',
{
'word': word,
'form': form })
template:
<form enctype="multipart/form-data" action="{% url upload_done 'clinical' %}" method="post">
<div>
{% for field in form %}
{{ field }}
{% endfor %}
<input type="submit" value="Save" />
</div>
</form>
function:
def handle_uploaded_file(word, f):
msg = "first stop"
data = []
for chunk in f.chunks():
data.append(chunk)
msg = "after chunk"
if word == 'clinical':
pat = Patient.objects.values_list('patient', flat=True)
for i in data:
if i[0] not in pat:
b2 = Patient(patient=i[0])
b2.save()
msg = "number was inserted"
else:
msg = "something"
return msg
Проблема в том, что когда я нажимаю «сохранить» в шаблоне, он хорошо перенаправляется на другой шаблон, но я не вижулюбое сообщение, которое, как я предполагаю, увидит (final_insert.html показывает {{msg}}) *
Может ли кто-нибудь помочь мне понять, что я делаю неправильно?Спасибо за вашу помощь!