Добавление классов CoreEnum и UILanguage
This commit is contained in:
@@ -8,4 +8,5 @@
|
||||
Пакет базовых классов
|
||||
"""
|
||||
|
||||
from .core_enum import CoreEnum
|
||||
from .core_test_case import CoreTestCase
|
||||
|
||||
47
net/xeaf/rack/core/core_enum.py
Normal file
47
net/xeaf/rack/core/core_enum.py
Normal file
@@ -0,0 +1,47 @@
|
||||
# DRF Rack
|
||||
# Библиотека классов расширений для Django REST Framework
|
||||
#
|
||||
# Автор: Николай В. Анохин <n.anokhin@xeaf.net>
|
||||
# Все права защищены. Лицензия: MIT
|
||||
|
||||
"""
|
||||
Описание класса CoreEnum
|
||||
"""
|
||||
|
||||
from enum import StrEnum
|
||||
|
||||
|
||||
class CoreEnum(StrEnum):
|
||||
"""
|
||||
Реализует базовые методы для классов перечислений
|
||||
"""
|
||||
|
||||
@classmethod
|
||||
def choices(cls) -> list[tuple[str, str]]:
|
||||
"""
|
||||
Возвращает список для организации выбора значения
|
||||
|
||||
:return: Список для выбора значения
|
||||
"""
|
||||
|
||||
return [(item.value, item.name) for item in cls]
|
||||
|
||||
@classmethod
|
||||
def keys(cls) -> list[str]:
|
||||
"""
|
||||
Возвращает список ключей
|
||||
|
||||
:return: Список ключей
|
||||
"""
|
||||
|
||||
return [item.name for item in cls]
|
||||
|
||||
@classmethod
|
||||
def values(cls) -> list[str]:
|
||||
"""
|
||||
Возвращает список значений
|
||||
|
||||
:return: Список значений
|
||||
"""
|
||||
|
||||
return [item.value for item in cls]
|
||||
Reference in New Issue
Block a user