2016-07-28 1 views
0

Ich habe eine Formularseite, die nach dem Hochladen von Dateien fragt, aber form.is_valid() gibt auf der Seite views.py immer 'False' zurück. Hier finden Sie die forms.py:form.is_valid() gibt false mit Dateianhängen zurück

forms.py

from django import forms 

class Upload_resume(forms.Form): 
    f_name = forms.CharField(label='First Name', max_length=64, required=True) 
    s_name = forms.CharField(label='Second Name', max_length=64, required=True) 
    email = forms.EmailField() 
    phone_no = forms.CharField(widget=forms.TextInput(attrs={'type':'number'})) 
    resume = forms.Field(label='Upload Resume', widget = forms.FileInput, required = True) 

Das folgende ist mein views.py

from django.shortcuts import render 
from .forms import Upload_resume 
from django.core.mail import send_mail, EmailMessage 

def up_resume(request): 
    if request.method == 'POST': 
     for key, value in request.POST.items(): 
      print(key, value) 
     form = Upload_resume(request.POST, request.FILES) 
     print form.is_valid() 
     print form.errors 
     print type(form.errors) 

Ich erhalte die folgenden Fehler:

(u'resume', u'NBA Meeting.docx') 
(u'f_name', u'Jeril') 
(u'phone_no', u'9784644334') 
(u's_name', u'K') 
(u'csrfmiddlewaretoken', u'9z6I0VaNGESR49iBHXvHwCGRRlGcjH1v') 
(u'email', u'[email protected]') 
False 
<ul class="errorlist"><li>resume<ul class="errorlist"><li>This field is required.</li></ul></li></ul> 
<class 'django.forms.utils.ErrorDict'> 

Was könnte der Fehler sein? Der Name der Datei, die ich hochgeladen habe, wird korrekt angezeigt. Trotzdem erhalte ich einen Fehler. Könnte jemand helfen. Ich bin neu in Django.

Antwort

1

Die POST Anfrage fehlt die Datei. Das form Tag in Ihrer Vorlage sollte enctype='multipart/form-data' haben, wenn Sie versuchen, eine Datei hochzuladen.

+0

Danke es funktioniert .. – Jeril