Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] Registro no acepta imagefield

Estas en el tema de Registro no acepta imagefield en el foro de Python en Foros del Web. Tengo una vista para registrar usuarios mediante un formulario, y al añadir un campo ImageField para subir un avatar, el registro no se aplica pero ...
  #1 (permalink)  
Antiguo 26/06/2014, 09:17
Avatar de kojicomics  
Fecha de Ingreso: junio-2013
Mensajes: 49
Antigüedad: 10 años, 10 meses
Puntos: 1
Registro no acepta imagefield

Tengo una vista para registrar usuarios mediante un formulario, y al añadir un campo ImageField para subir un avatar, el registro no se aplica pero tampoco lanza ningún error

Si elimino el campo ImageField del model y de la vista, el registro se realiza sin problemas en la base de datos

Estos son los ficheros:

views.py:

Código Python:
Ver original
  1. class SignIn(FormView):
  2.     template_name = 'index/signin.html'
  3.     form_class = UserForm
  4.     success_url = reverse_lazy('signin')
  5.  
  6.     def form_valid(self, form):
  7.         user = form.save()
  8.         profile = Profiles()
  9.         profile.user = user
  10.         profile.mail = form.cleaned_data['mail']
  11.         profile.url = form.cleaned_data['url']
  12.         profile.avatar = form.cleaned_data['avatar']
  13.         profile.save()
  14.         return super(SignIn, self).form_valid(form)


models.py:

Código Python:
Ver original
  1. class Profiles(models.Model):
  2.     user = models.OneToOneField(User)
  3.     mail = models.EmailField(max_length=254, unique=True)
  4.     url = models.URLField()
  5.     avatar = models.ImageField(upload_to='profile_avatar')
  6.  
  7.     def __str__(self):
  8.         return self.user.username


forms.py:

Código Python:
Ver original
  1. class UserForm(UserCreationForm):
  2.     mail = forms.EmailField()
  3.     url = forms.URLField()
  4.     avatar = forms.ImageField()


Por la información que encontré, debería funcionar sin problemas, pero como no alerta de ningún error al enviar el formulario no puedo identificar el problema

Saludos!

Última edición por razpeitia; 26/06/2014 a las 10:14
  #2 (permalink)  
Antiguo 26/06/2014, 12:04
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Registro no acepta imagefield

Voy asumir que tu problema esta en el template. Ya que no lo pusiste.

Tienes que añadir esto a la etiqueta form.
Código HTML:
Ver original
  1. <form action="SOME_ACTION" enctype="multipart/form-data">
  #3 (permalink)  
Antiguo 26/06/2014, 12:35
Avatar de kojicomics  
Fecha de Ingreso: junio-2013
Mensajes: 49
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: Registro no acepta imagefield

Gracias, ahora funciona correctamente

Etiquetas: django, formulario
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 21:09.