Как добавить поле выбора в UserCreationForm

Я пытаюсь спросить (с помощью forms.Select возможно), является ли пользователь корейским студентом или иностранным студентом, когда пользователь регистрируется. Я пробовал другие ответы на подобные вопросы, но они не сработали. Возможно, это из-за определения класса User. Как мне его добавить?

Вот как определен мой User класс:

from .models import User
Choices = (('I', "International"), ('K', "Korean"))
User.add_to_class('scheduleData',models.ManyToManyField(UserSelect, blank=True))
User.add_to_class('lang',models.CharField(max_length=2, default="EN"))
User.add_to_class('you_are',models.CharField(max_length=1, choices=Choices, default=False))

Вот как определяется мой NewUserForm:
(На странице отображается "You are:" без ничего с правой стороны)

class NewUserForm(UserCreationForm):

    Choices = (('I', "International"), ('K', "Korean"))
    widgets = {"you_are": forms.CharField(widget=forms.Select(choices=Choices), max_length=2)}

    class Meta:
        model = User
        fields = ("username", "password1", "password2", "you_are")

    def save(self, commit=True):
        user = super(NewUserForm, self).save(commit=False)
        if commit:
            if user.you_are == "K":
                user.lang = "KR"
            user.save()
        return user

Заранее спасибо.

не используйте модель пользователя напрямую, используйте абстрактную модель пользователя, тогда вы сможете расширять модель пользователя как угодно

class User(AbstractUser):
 Choices = (('I', "International"), ('K', "Korean"))
 lang = models.CharField(max_length=1, choices=Choices, default="I"))
Вернуться на верх