Files
drf-rack/net/xeaf/rack/enums/ui_language.py

40 lines
1.0 KiB
Python

# DRF Rack
# Библиотека классов расширений для Django REST Framework
#
# Автор: Николай В. Анохин <n.anokhin@xeaf.net>
# Все права защищены. Лицензия: MIT
"""
Описание класса UILanguage
"""
from net.xeaf.rack.core import CoreEnum
class UILanguage(CoreEnum):
"""
Перечисление доступных языков интерфейса
"""
ENGLISH = 'en'
""" Английский """
RUSSIAN = 'ru'
""" Русский """
@classmethod
def from_string(cls, value: str) -> UILanguage:
"""
Создает значение из строкового представления
:param value: Строковое значение
:return: Язык интерфейса пользователя
"""
normalized = value.lower().split('-')[0]
for member in cls:
if member.value == normalized:
return member
raise ValueError(f"Unsupported language: {value}")