simple example django django-models

example - Django: ¿cómo hacer que ImageField/FileField sea opcional?



imagefield django example (2)

class Product(models.Model): ... image = models.ImageField(upload_to = generate_filename, blank = True)

Cuando uso ImageField (blanco = Verdadero) y no selecciono imagen en forma de administrador, se produce una excepción.

En el código django puedes ver esto:

class FieldFile(File): .... def _require_file(self): if not self: raise ValueError("The ''%s'' attribute has no file associated with it." % self.field.name) def _get_file(self): self._require_file() ...

Django trac tiene el boleto # 13327 sobre este problema, pero parece que no se puede arreglar pronto. ¿Cómo hacer que estos campos sean opcionales?


Set null=True (ver documentation )

class Product(models.Model): ... image = models.ImageField(upload_to=generate_filename, blank=True, null=True)


blank=True debería funcionar. Si este atributo, que es False de forma predeterminada, se establece en True , permitirá la entrada de un valor vacío.

Tengo la siguiente clase en mi aplicación de artículo:

class Photo(models.Model): imagename = models.TextField() articleimage = models.ImageField(upload_to=''photos/%Y/%m/%d'', blank=True)

Hago uso de la clase anterior en otra clase usando la relación ManyToManyField :

class Article(models.Model): pub_date = models.DateTimeField(default=timezone.now) slug = models.SlugField(max_length=130) title = models.TextField() photo = models.ManyToManyField( Photo, related_name=''photos'', blank=True) author = models.ForeignKey(User) body = models.TextField() categories = models.ManyToManyField( Category, related_name=''articles'', null=True)

Quiero hacer que las imágenes en mis artículos sean opcionales, tan en blank=True en

photo = models.ManyToManyField(Photo, related_name=''photos'', blank=True)

es necesario. Esto me permite crear un artículo sin imágenes si quiero.

¿Estás utilizando el Product clase en cualquier relación? Si es así, asegúrese de establecer en blank=True en la relación que está utilizando.