[CHANGE] Switched to more modern models.TextChoices class for languages

This commit is contained in:
Peter Pfeufer 2023-05-28 18:31:50 +02:00
parent 3044f18900
commit e8f508cecb
No known key found for this signature in database
GPG Key ID: 6051D2C6AD4EBC27

View File

@ -63,6 +63,22 @@ class UserProfile(models.Model):
class Meta: class Meta:
default_permissions = ('change',) default_permissions = ('change',)
class Language(models.TextChoices):
"""
Choices for UserProfile.language
"""
ENGLISH = 'en', _('English')
GERMAN = 'de', _('German')
SPANISH = 'es', _('Spanish')
CHINESE = 'zh-hans', _('Chinese Simplified')
RUSSIAN = 'ru', _('Russian')
KOREAN = 'ko', _('Korean')
FRENCH = 'fr', _('French')
JAPANESE = 'ja', _('Japanese')
ITALIAN = 'it', _('Italian')
UKRAINIAN = 'uk', _('Ukrainian')
user = models.OneToOneField( user = models.OneToOneField(
User, User,
related_name='profile', related_name='profile',
@ -76,21 +92,9 @@ class UserProfile(models.Model):
State, State,
on_delete=models.SET_DEFAULT, on_delete=models.SET_DEFAULT,
default=get_guest_state_pk) default=get_guest_state_pk)
LANGUAGE_CHOICES = [
('en', _('English')),
('de', _('German')),
('es', _('Spanish')),
('zh-hans', _('Chinese Simplified')),
('ru', _('Russian')),
('ko', _('Korean')),
('fr', _('French')),
('ja', _('Japanese')),
('it', _('Italian')),
('uk', _('Ukrainian')),
]
language = models.CharField( language = models.CharField(
_("Language"), max_length=10, _("Language"), max_length=10,
choices=LANGUAGE_CHOICES, choices=Language.choices,
blank=True, blank=True,
default='') default='')
night_mode = models.BooleanField( night_mode = models.BooleanField(