import abc from enum import IntEnum class EnumMixin: @classmethod @abc.abstractmethod def choices(cls): pass class PermissionAction(EnumMixin, IntEnum): create = 1 delete = 2 update = 3 read = 4 @classmethod def choices(cls): return { cls.create: "Create", cls.delete: "Delete", cls.update: "Update", cls.read: "Read", }