
28/03/2018, 22:51
|
| | Fecha de Ingreso: julio-2010
Mensajes: 37
Antigüedad: 14 años, 8 meses Puntos: 1 | |
Upload de imagenes one to many Buenos días a todos.
Necesito subir unas imágenes al servidor a través de un formulario. La dificultad con la que me encuentro es que se trata de un form que actúa sobre dos modelos que se relacionan a través de una Foreign Key (one to many). Los modelos son los siguientes:
Código:
class Anuncio(models.Model):
titulo = models.CharField(max_length=200)
texto = models.CharField(max_length=750)
ciudad=models.ForeignKey(Ciudad,null=True,blank=True,on_delete=models.CASCADE)
categoria=models.ForeignKey(Categoria,null=True,blank=True,on_delete=models.CASCADE)
slug=models.SlugField(max_length=250)
activo=models.BooleanField(default=True)
net_address=models.CharField(max_length=200)
fecha_publicacion=models.DateTimeField(default=datetime.now(), blank=True)
premium = models.BooleanField(default=False)
fecha_premium = models.DateTimeField(blank=True, null=True)
password = models.CharField(max_length=50)
telefono = models.CharField(max_length=20)
class Imagen(models.Model):
imagen = models.ImageField(upload_to='static/media')
anuncio = models.ForeignKey(Anuncio,null=True,blank=True,on_delete=models.CASCADE)
El código para los formularios es el siguiente:
Código:
from django import forms
from apps.anuncios.models import Anuncio, Imagen
class AddAnuncio(forms.ModelForm):
class Meta:
model = Anuncio
fields=[
'ciudad',
'categoria',
'titulo',
'texto',
'password',
'telefono',
]
labels={
'ciudad': 'Ville',
'categoria': 'Categorie',
'titulo': 'Titre',
'texto': 'Description',
'password':'Mot de passe:',
'telefono':'Téléphone',
}
widgets = {
'ciudad': forms.Select(),
'categoria': forms.Select(),
'titulo': forms.TextInput(),
'texto': forms.TextInput(),
'password': forms.TextInput(),
'telefono': forms.TextInput(),
}
class AddImagen(forms.ModelForm):
class Meta:
model = Imagen
fields = [
'imagen',
]
labels = {
'imagen': 'Photo',
}
Me faltaría programar la vista respectiva que me permita subir el anuncio y sus imágenes a través de modelformset_factory. Es en este punto donde no consigo hacer que mi proyecto funcione adecuadamente, por eso solicito ayuda. Desde ya mismo doy las gracias a las personas que quieran ayudarme. |