поле активации django не меняется

#django #authentication #activation

Вопрос:

Мне удалось отправить электронное письмо для активации. Однако, когда пользователь нажимает на ссылку, signup_confirmation поле не меняется.

Вот моя модель:

 class UserProfile(models.Model):
    GENDER = (
        ('Male', 'Male'),
        ('Female', 'Female'),
        ('Other', 'Other'),
    )
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    phone = models.CharField(blank=True, max_length=20)
    address = models.CharField(blank=True, max_length=150)
    city = models.CharField(blank=True, max_length=20)
    country = models.CharField(blank=True, max_length=20)
    image = models.ImageField(blank=True,storage = PrivateMediaStorage())
    language = models.CharField(blank=True, max_length=20)
    gender = models.CharField(max_length=10, choices=GENDER,default="Other")
    signup_confirmation = models.BooleanField(default=False)
    def __str__(self):
        return self.user.username

    def user_name(self):
        return self.user.first_name   ' '   self.user.last_name   ' ['   self.user.username   ']
 

Вот мое активированное поле:

 def activate(request, uidb64, token):
    try:
        uid = force_text(urlsafe_base64_decode(uidb64))
        user = User.objects.get(pk=uid)
    except (TypeError, ValueError, OverflowError, User.DoesNotExist):
        user = None
    # checking if the user exists, if the token is valid.
    if user is not None and account_activation_token.check_token(user, token):
        # if valid set active true 
        user.is_active = True
        # set signup_confirmation true
        user.userprofile.signup_confirmation = True
        user.save()
        login(request, user)
        return redirect('activated')
    else:
        return render(request, 'user/activation_invalid.html')    
 

Почему-то код user.userprofile.signup_confirmation = True не работает.

Пожалуйста, взгляните