Models API#
- class fastapi_restly.models.DataclassBase(**kwargs: Any)#
Bases:
TableNameMixin,MappedAsDataclass,DeclarativeBaseSQLAlchemy declarative base with dataclass semantics.
- registry: ClassVar[_RegistryType] = <sqlalchemy.orm.decl_api.registry object>#
Refers to the
_orm.registryin use where new_orm.Mapperobjects will be associated.
- type_annotation_map = {<enum 'Enum'>: Enum(native_enum=False, length=64)}#
- class fastapi_restly.models.IDBase(*, id: int = <sqlalchemy.orm.properties.MappedColumn object>)#
Bases:
IDMixin,DataclassBaseConvenience base: DataclassBase + integer id primary key.
- class fastapi_restly.models.IDMixin(*, id: int = <sqlalchemy.orm.properties.MappedColumn object>)#
Bases:
MappedAsDataclassDataclass mixin adding an auto-incrementing integer id primary key.
- id: Mapped[int] = <sqlalchemy.orm.properties.MappedColumn object>#
- class fastapi_restly.models.IDStampsBase(*, id: int = <sqlalchemy.orm.properties.MappedColumn object>, created_at: ~datetime.datetime = <sqlalchemy.orm.properties.MappedColumn object>, updated_at: ~datetime.datetime = <sqlalchemy.orm.properties.MappedColumn object>)#
Bases:
TimestampsMixin,IDBaseConvenience base: IDBase + created_at / updated_at timestamps.
- class fastapi_restly.models.PlainBase(**kwargs: Any)#
Bases:
TableNameMixin,DeclarativeBaseDeclarative base without dataclass semantics.
- registry: ClassVar[_RegistryType] = <sqlalchemy.orm.decl_api.registry object>#
Refers to the
_orm.registryin use where new_orm.Mapperobjects will be associated.
- type_annotation_map = {<enum 'Enum'>: Enum(native_enum=False, length=64)}#
- class fastapi_restly.models.PlainIDBase(**kwargs: Any)#
Bases:
PlainIDMixin,PlainBaseConvenience base: PlainBase + integer id primary key.
- class fastapi_restly.models.PlainIDMixin#
Bases:
objectNon-dataclass mixin adding an auto-incrementing integer id primary key.
- id: Mapped[int] = <sqlalchemy.orm.properties.MappedColumn object>#
- class fastapi_restly.models.PlainIDStampsBase(**kwargs: Any)#
Bases:
PlainTimestampsMixin,PlainIDBaseConvenience base: PlainIDBase + created_at / updated_at timestamps.
- class fastapi_restly.models.TimestampsMixin(*, created_at: ~datetime.datetime = <sqlalchemy.orm.properties.MappedColumn object>, updated_at: ~datetime.datetime = <sqlalchemy.orm.properties.MappedColumn object>)#
Bases:
MappedAsDataclassDataclass mixin adding UTC-aware created_at and updated_at timestamps.
- created_at: Mapped[datetime] = <sqlalchemy.orm.properties.MappedColumn object>#
- updated_at: Mapped[datetime] = <sqlalchemy.orm.properties.MappedColumn object>#
- async fastapi_restly.models.async_get_one_or_create(model_cls: type[T], session: AsyncSession, **kwargs: Any) T#
Async variant of get_one_or_create.
- fastapi_restly.models.get_one_or_create(model_cls: type[T], session: Session, **kwargs: Any) T#
Return the unique row matching the given keyword arguments or create it.