Foros del Web » Programando para Internet » Python »

Upload de imagenes one to many

Estas en el tema de Upload de imagenes one to many en el foro de Python en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 28/03/2018, 22:51
 
Fecha de Ingreso: julio-2010
Mensajes: 37
Antigüedad: 14 años, 3 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.

Etiquetas: django, imagenes, upload
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:16.