gmok Seguir
Beta
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
- Desde
- 17 Sep 2019
- Mensajes
- 133
Estoy haciendo un sistema de cursos, y al momento de crear una nueva cuenta se crea perfectamente, pero no se crea el perfil de usuario al crear la cuenta, cómo podría lograr esto? Aquí comparto mi signals.py, y algunas clases:
signals.py
En las vistas tengo lo siguiente por ejemplo:
Esta línea es la clave para crear el perfil:
Pero solo lo crea cuando ingreso a la vista del perfil, pero cuando uno se registra, le pide al usuario que inicie sesión, y en ese momento lo redirige a la home (página principal) y ahí ya debería ya estar creado.
Hay algún paso que estoy olvidando? Porque me parece que se debería crear el perfil al momento de que se cree o se loguee el usuario.
signals.py
Insertar CODE, HTML o PHP:
@receiver(post_save, sender=User)
def create_profile(sender, instance, created, **kwargs):
if created:
Profile.objects.create(user=instance)
@receiver(post_save, sender=User)
def save_profile(sender, instance, **kwargs):
instance.profile.save()
En las vistas tengo lo siguiente por ejemplo:
Insertar CODE, HTML o PHP:
@login_required()
def profile(request):
profile, created = Profile.objects.get_or_create(user=request.user)
if request.method == 'POST':
Esta línea es la clave para crear el perfil:
Insertar CODE, HTML o PHP:
Profile.objects.get_or_create(user=request.user)
Pero solo lo crea cuando ingreso a la vista del perfil, pero cuando uno se registra, le pide al usuario que inicie sesión, y en ese momento lo redirige a la home (página principal) y ahí ya debería ya estar creado.
Hay algún paso que estoy olvidando? Porque me parece que se debería crear el perfil al momento de que se cree o se loguee el usuario.