que tienen un método personalizado limpia a continuación:Django dimensiones validar ImageField etc
def clean_image(self):
image = self.cleaned_data['image']
if image:
from django.core.files.images import get_image_dimensions
w, h = get_image_dimensions(image)
if not image.content_type in settings.VALID_IMAGE_FORMATS:
raise forms.ValidationError(u'Only *.gif, *.jpg and *.png images are allowed.')
if w > settings.VALID_IMAGE_WIDTH or h > settings.VALID_IMAGE_HEIGHT:
raise forms.ValidationError(u'That image is too big. The image needs to be ' + str(settings.VALID_IMAGE_WIDTH) + 'px * ' + str(settings.VALID_IMAGE_HEIGHT) + 'px (or less).')
return image
El escenario problema es el siguiente:
Una imagen se ha subido. Ahora quiero borrarlo usando la casilla de verificación que aparece con el widget ImageField. Al enviar el formulario para dejar esto en claro, el claro no.
Si elimino mi método de limpieza personalizado, el borrado funciona. Por lo tanto, creo que mi método está haciendo algo mal.
intentar deshacer la sangría del retorno de modo que es en línea con la sentencia if , es decir, siempre devuelve los datos. –