Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 2, 2015 09:17:26

megoloman
Зарегистрирован: 2015-10-26
Сообщения: 113
Репутация: +  0  -
Профиль   Отправить e-mail  

Не отображается форма FileField

Здравствуйте! Помогите пожалуйста с отображением формы.

models.py:

class Mydocuments(models.Model):
    docfile = models.FileField(upload_to='') 
forms.py:
class DocumentForm(forms.Form):
    class Meta:
        model = Mydocuments
        fields = ['docfile']
views.py:
def list(request):    
    # Handle file upload
    if request.method == 'POST':
        form = DocumentForm(request.POST, request.FILES)
        if form.is_valid():
            print(request.POST)
            newdoc = Mydocuments(docfile = request.FILES['docfile'])
            newdoc.save()
            # Redirect to the document list after POST
            return HttpResponseRedirect(reverse('contact_info.views.list'))
    else:
        form = DocumentForm() # A empty, unbound form
    # Load documents for the list page
    documents = Mydocuments.objects.all()
    # Render list page with the documents and the form
    return render_to_response('list.html' ,{'documents': documents, 'form': form}, context_instance=RequestContext(request))
list.html:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Minimal Django File Upload Example</title>	
	</head>
	<body>		
		{% if documents %}
			<ul>		
				<img src="{{ documents.docfile.url }}" width=200;/>			
			</ul>
		{% else %}
			<p>No documents.</p>
		{% endif %}		
		<form action="" method="post" enctype="multipart/form-data">
			{% csrf_token %}
			<p>{{ form.non_field_errors }}</p>
			<p>{{ form.docfile.label_tag }} {{ form.docfile.help_text }}</p>
			<p>
				{{ form.docfile.errors }}
				{{ form.docfile }}
			</p>
			<p><input type="submit" value="Upload" /></p>
		</form>		
	</body>
</html>

Однако после запуска всего этого отображается только кнопка Upload и надпись No documents, желаемой кнопки Browse для загрузки файла нет.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version