DJango - ¿Cómo crear perfil de Usuario al Registrarme o Iniciar Sesión en Django?

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

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.
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba