ich eine Form haben, mit einem Bündel von Feldern, und dann habe ich ein:Django: nach form.is_valid Scheck, cleaned_data fehlt das Bildfeld
profile_image=forms.ImageField(required=False)
Das Problem si, dass nach dem form.is_valid() überprüft,
form.cleaned_data.get('first_name')
zum Beispiel DOES die tatsächlichen Namen zurückgeben, aber
form.cleaned_data.get('profile_image')
NICHT anynthing zurückzukehren.
Im Druck (request.POST) -Ausgang, erhalte ich
u'profile_image': [u'02 Portfolio Page.jpg']
aber im Druck (form.cleaned_data) i erhalten:
'profile_image': None
Warum ist die Datei am is_valid verloren prüfen? Was soll ich machen?
UPDATE:
class NewChickForm(forms.Form):
first_name = forms.CharField()
last_name = forms.CharField()
profile_image=forms.ImageField(required=False)
def do_save(self):
u = Subject(
first_name = self.cleaned_data.get('first_name'),
last_name = self.cleaned_data.get('last_name'),
profile_image = self.cleaned_data.get('profile_image'),
)
print(self.cleaned_data)
u.save()
return u
und
s = Subject()
form = NewChickForm(request.POST) # 1)do i add here `request.FILES` ?
if form.is_valid():
s = form.do_save()
# 2) s.profile_image = form.cleaned_data.get('profile_image')?
Auch wenn ich tun # 1) und # 2), i noch KEINE
Sie hatten Recht. Ich hatte das Multipart nicht. hinzugefügt. Aber ich bekomme das Verbindliche nicht zu sehr. Die Django-Erklärung scheint sehr unterschiedlich zu sein, was ich in meinem Code habe. Könntest du eine Zeile darüber schreiben, wie ich es nach dem neuen Code tun sollte, den ich im UPDATE eingefügt habe? das wäre wirklich toll – mgPePe
Die mehrteiligen Daten werden in 'request.FILES' geschrieben, also müssen Sie sie an das Formular in # 1 für' is_valid' binden, um dieses Feld zu validieren. Ich bin mir über # 2 nicht sicher, da ich die Datei immer direkt aus 'request.FILES' entpacke, anstatt' cleaned_data.get (...) 'zu benutzen. Haben Sie' request.FILES' inspiziert, um zu sehen, ob Ihre Daten da sind ? –
Hier ist dieses Dokument wahrscheinlich eine bessere Erklärung: http://docs.djangoproject.com/en/dev/topics/http/file-uploads/?from=olddocs –