base¶
Base model classes for SQLAlchemy ORM with common patterns and functionality.
Common base classes for SQLAlchemy declarative models.
UUID Primary Key Models¶
- class advanced_alchemy.base.UUIDBase[source]¶
Bases:
UUIDPrimaryKey,CommonTableAttributes,AdvancedDeclarativeBase,AsyncAttrsBase for all SQLAlchemy declarative models with UUID v4 primary keys.
See also
CommonTableAttributesadvanced_alchemy.mixins.UUIDPrimaryKeyAdvancedDeclarativeBaseAsyncAttrs
Base model with UUID primary key (UUID v4).
- class advanced_alchemy.base.UUIDAuditBase[source]¶
Bases:
CommonTableAttributes,UUIDPrimaryKey,AuditColumns,AdvancedDeclarativeBase,AsyncAttrsBase for declarative models with UUID v4 primary keys and audit columns.
See also
CommonTableAttributesadvanced_alchemy.mixins.UUIDPrimaryKeyadvanced_alchemy.mixins.AuditColumnsAdvancedDeclarativeBaseAsyncAttrs
Base model with UUID primary key and audit columns (created_at, updated_at).
- class advanced_alchemy.base.UUIDv6Base[source]¶
Bases:
UUIDv6PrimaryKey,CommonTableAttributes,AdvancedDeclarativeBase,AsyncAttrsBase for all SQLAlchemy declarative models with UUID v6 primary keys.
See also
advanced_alchemy.mixins.UUIDv6PrimaryKeyCommonTableAttributesAdvancedDeclarativeBaseAsyncAttrs
Base model with UUID v6 primary key (time-ordered).
- class advanced_alchemy.base.UUIDv7Base[source]¶
Bases:
UUIDv7PrimaryKey,CommonTableAttributes,AdvancedDeclarativeBase,AsyncAttrsBase for all SQLAlchemy declarative models with UUID v7 primary keys.
See also
advanced_alchemy.mixins.UUIDv7PrimaryKeyCommonTableAttributesAdvancedDeclarativeBaseAsyncAttrs
Base model with UUID v7 primary key (time-ordered, improved sorting).
BigInt Primary Key Models¶
- class advanced_alchemy.base.BigIntBase[source]¶
Bases:
BigIntPrimaryKey,CommonTableAttributes,AdvancedDeclarativeBase,AsyncAttrsBase for all SQLAlchemy declarative models with BigInt primary keys.
See also
advanced_alchemy.mixins.BigIntPrimaryKeyCommonTableAttributesAdvancedDeclarativeBaseAsyncAttrs
Base model with BigInt auto-incrementing primary key.
- class advanced_alchemy.base.BigIntAuditBase[source]¶
Bases:
CommonTableAttributes,BigIntPrimaryKey,AuditColumns,AdvancedDeclarativeBase,AsyncAttrsBase for declarative models with BigInt primary keys and audit columns.
See also
CommonTableAttributesadvanced_alchemy.mixins.BigIntPrimaryKeyadvanced_alchemy.mixins.AuditColumnsAdvancedDeclarativeBaseAsyncAttrs
Base model with BigInt primary key and audit columns (created_at, updated_at).
NanoID Primary Key Models¶
- class advanced_alchemy.base.NanoIDBase[source]¶
Bases:
NanoIDPrimaryKey,CommonTableAttributes,AdvancedDeclarativeBase,AsyncAttrsBase for all SQLAlchemy declarative models with Nano ID primary keys.
See also
advanced_alchemy.mixins.NanoIDPrimaryKeyCommonTableAttributesAdvancedDeclarativeBaseAsyncAttrs
Base model with NanoID primary key (requires nanoid extra).
Declarative Base¶
- class advanced_alchemy.base.AdvancedDeclarativeBase[source]¶
Bases:
DeclarativeBaseA subclass of declarative base that allows for overriding of the registry.
Inherits from
sqlalchemy.orm.DeclarativeBase.- registry¶
The registry for the declarative base.
- Type:
- __metadata_registry__¶
The metadata registry.
- Type:
MetadataRegistry
- __init__(**kwargs)¶
A simple constructor that allows initialization from kwargs.
Sets attributes on the constructed instance using the names and values in
kwargs.Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.
- metadata: ClassVar[MetaData] = MetaData()¶
Refers to the
_schema.MetaDatacollection that will be used for new_schema.Tableobjects.See also
Enhanced declarative base with additional functionality.
- class advanced_alchemy.base.CommonTableAttributes[source]¶
Bases:
BasicAttributesCommon attributes for SQLAlchemy tables.
Inherits from
BasicAttributesand provides a mechanism to infer table names from class names.
Common attributes mixed into all base models.
- class advanced_alchemy.base.BasicAttributes[source]¶
Bases:
objectBasic attributes for SQLAlchemy tables and queries.
Provides a method to convert the model to a dictionary representation.
Basic attributes for models (id, to_dict).