跳转至

模型 API

base

模型基类, 使用 pydantic 库管理模型

UUIDModel

Bases: Model

模型基类

Source code in faster_app/models/base.py
class UUIDModel(Model):
    """模型基类"""

    id = UUIDField(primary_key=True, verbose_name="ID")

    class Meta:
        abstract = True

DateTimeModel

Bases: Model

模型基类

Source code in faster_app/models/base.py
class DateTimeModel(Model):
    """模型基类"""

    created_at = DatetimeField(auto_now_add=True, verbose_name="创建时间")
    updated_at = DatetimeField(auto_now=True, verbose_name="更新时间")

    class Meta:
        abstract = True

StatusModel

Bases: Model

模型基类

Source code in faster_app/models/base.py
class StatusModel(Model):
    """模型基类"""

    class StatusEnum(IntEnum):
        """状态枚举"""

        ACTIVE = 1
        INACTIVE = 0

    status = IntEnumField(default=1, verbose_name="状态", enum_type=StatusEnum)

    class Meta:
        abstract = True

StatusEnum

Bases: IntEnum

状态枚举

Source code in faster_app/models/base.py
class StatusEnum(IntEnum):
    """状态枚举"""

    ACTIVE = 1
    INACTIVE = 0

ScopeModel

Bases: Model

作用域模型基类, 存储作用域

Source code in faster_app/models/base.py
class ScopeModel(Model):
    """作用域模型基类, 存储作用域"""

    class ScopeEnum(StrEnum):
        """作用域枚举"""

        SYSTEM = "system"
        TENANT = "tenant"
        PROJECT = "project"
        OBJECT = "object"

    scope = CharEnumField(ScopeEnum, default=ScopeEnum.PROJECT, verbose_name="作用域")

    class Meta:
        abstract = True

ScopeEnum

Bases: StrEnum

作用域枚举

Source code in faster_app/models/base.py
class ScopeEnum(StrEnum):
    """作用域枚举"""

    SYSTEM = "system"
    TENANT = "tenant"
    PROJECT = "project"
    OBJECT = "object"

options: show_root_heading: true heading_level: 2 members: - UUIDModel - DateTimeModel - EnumModel - ScopeModel