Hi :) I'm trying to validate an uploaded image's size and filetype. However i have problems even gettings to the validation as django keeps telling me that there's no object. When i don't use the validation part I can upload an image just fine. So the upload thing works.
I just can't figure out how to pass on the file to the validation part. I have tried with several approaches I have found on the internet. Therefore i will list my view, model and the two form methods i have tried. first, my view: def upload_file(request): myprofile = request.user.get_profile() current = request.user print "upload 1" if request.method == 'POST': form = AvatarForm(request.POST, request.FILES,instance=myprofile) print "upload 2" if form.is_valid(): [...] model: class Avatar(models.Model): user = models.ForeignKey(User,unique=True,editable=False) photo = models.ImageField(upload_to=get_profile_path, blank=True, null=True) thumbnail = models.ImageField(upload_to='profile_thumb', blank=True, null=True) form: class AvatarForm(ModelForm): class Meta: model = Avatar #1 def clean(self,data,initial=None): content = super(ImageField, self).clean(self,data,initial) content_type = content.content_type.split('/')[0] if content_type in settings.CONTENT_TYPES: if content._size > settings.MAX_UPLOAD_SIZE: raise forms.ValidationError(_('Please keep filesize under %s. Current filesize %s') % (filesizeformat(settings.MAX_UPLOAD_SIZE), filesizeformat(content._size))) else: raise forms.ValidationError(_('File type is not supported')) return content #2 def clean(self): if 'photo' in self.cleaned_data: photo = self.cleaned_data['photo'] print photo if photo.get('content-type') != 'image/jpeg': msg = 'Only .ZIP archive files are allowed.' raise forms.ValidationError(msg) return photo The error i get is pretty much the same with both methods. Nonetype has nu method/attribute: content_type/get... So i don't know if the rest of the validation code works since I can't pass my file through to the validation :-( Any help is appreciated :-) And a good weekend to all of you --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---