Я новичок в работе с django, я пытаюсь создать форму, которая позволяет пользователю загружать файл.Код, который я использовал, почти такой же, как в учебнике по djangoproject, но он не работал.мой код выглядит следующим образом:
для просмотра:
from django import forms
from django.shortcuts import render_to_response
from django.http import HttpResponseRedirect
def upload_file(request):
if request.method == 'POST':
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
handle_uploaded_file(request.FILES['file'])
return HttpResponseRedirect('/')
else:
form = UploadFileForm()
return render_to_response('upload_file.html', {'form': form})
def handle_uploaded_file(f):
destination = open('home/dutzy/Desktop/mysite/name.txt', 'wb+')
for chunk in f.chunks():
destination.write(chunk)
destination.close()
модели:
из django.db импорт моделей
from django import forms
class UploadFileForm(forms.Form):
title = forms.CharField(max_length=50)
file = forms.FileField()
и шаблона: upload_file.html
<form enctype="multipart/form-data" method="post" action="/upload_file/">
<table>
<tr>
<td>
<b> {{ form.file.label_tag }}</b> {{ form.file}}
</td>
</tr>
<tr>
<td>
<input type="hidden" value="title" name="title" id="title" />
<input type="submit" value="Save" id="Save"/>
</td>
</tr>
</table>
</form>
Я тестирую свой код на сервере разработки django.ошибка: глобальное имя 'UploadFileForm' не определено , хотя я подозреваю, что есть и другие проблемы.я настроил urls.py как: (r'^upload/$', 'mysite.upload.views.upload_file')
Может кто-нибудь взглянуть на мой код и указать мне правильное направление?
Спасибо