Il metamodello del tuo modulo è User
, quindi quando provi:
profile = form.save(commit=False)
la variabile profile
è un'istanza dell'User
class, quindi, dal momento che hai il segnale che crea il UserProfile
ad esempio, dovresti usare questo codice:
user = form.save()
profile = user.userprofile
user_group = form.cleaned_data.get('user_type')
profile.user_type = user_group
profile.save()
invece di:
profile = form.save(commit=False)
profile.user = request.user
profile.save()