Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Detalhes de registro de usuário extra do Django não salvando no banco de dados


Seu metamodelo de formulário é User , então quando você tentar:
profile = form.save(commit=False)

a variável profile é uma instância do User class, então, já que você tem o sinal que cria o UserProfile instância, você deve usar este código:
        user = form.save()
        profile = user.userprofile
        user_group = form.cleaned_data.get('user_type')
        profile.user_type = user_group
        profile.save()

ao invés de:
        profile = form.save(commit=False)
        profile.user = request.user
        profile.save()