# DRF Rack # Библиотека классов расширений для Django REST Framework # # Автор: Николай В. Анохин # Все права защищены. Лицензия: MIT """ Описание класса ViewSetAction """ from enum import unique from net.xeaf.rack.core import CoreEnum @unique class ViewSetAction(CoreEnum): """ Перечисление действий набора представлений """ LIST = "list" """ Список объектов """ RETRIEVE = "retrieve" """ Получение объекта """ CREATE = "create" """ Создание объекта """ UPDATE = "update" """ Изменение объекта """ PARTIAL_UPDATE = "partial_update" """ Частичное изменение объекта """ DESTROY = "destroy" """ Удаление объекта """ @classmethod def get_method(cls, action: ViewSetAction) -> str: """ Возвращает HTTP метод для указанного действия :param action: Действие :return: HTTP метод """ match action: case cls.LIST: return "item_list" case cls.CREATE: return "item_create" case cls.RETRIEVE: return "item_retrieve" case cls.UPDATE: return "item_update" case cls.PARTIAL_UPDATE: return "item_partial_update" case cls.DESTROY: return "item_destroy" case _: raise ValueError(f"Invalid action: {action}")