simpleml.persistables.base_sqlalchemy

Base class for sqlalchemy

Module Contents

Classes

BaseSQLAlchemy

Base class for all SimpleML database objects. Defaults to PostgreSQL

BinaryStorageSqlalchemy

Shared metadata for all tables that live in the binary storage schema

DatasetStorageSqlalchemy

Shared metadata for all tables that live in the dataset storage schema

SimplemlCoreSqlalchemy

Shared metadata for all tables that live in the main schema

Functions

_receive_before_update(mapper, connection, target)

Listen for updates and update modified_timestamp column.

Attributes

Base

LOGGER

__author__

simpleml.persistables.base_sqlalchemy.Base[source]
simpleml.persistables.base_sqlalchemy.LOGGER[source]
simpleml.persistables.base_sqlalchemy.__author__ = Elisha Yadgaran[source]
class simpleml.persistables.base_sqlalchemy.BaseSQLAlchemy[source]

Bases: Base, sqlalchemy_mixins.AllFeaturesMixin

Base class for all SimpleML database objects. Defaults to PostgreSQL but can be swapped out for any supported SQLAlchemy backend.

Takes advantage of sqlalchemy-mixins to enable active record operations (TableModel.save(), create(), where(), destroy())

Added some inheritable convenience methods

created_timestamp: Server time on insert modified_timestamp: Server time on update

__abstract__ = True[source]
created_timestamp[source]
modified_timestamp[source]
classmethod filter(cls, *filters)[source]
classmethod query_by(cls, *queries)[source]
class simpleml.persistables.base_sqlalchemy.BinaryStorageSqlalchemy[source]

Bases: BaseSQLAlchemy

Shared metadata for all tables that live in the binary storage schema

SCHEMA = BINARY[source]
__abstract__ = True[source]
metadata[source]
_receive_before_create(target, connection, **kwargs)[source]

Listen for and creates a new schema for datasets

class simpleml.persistables.base_sqlalchemy.DatasetStorageSqlalchemy[source]

Bases: BaseSQLAlchemy

Shared metadata for all tables that live in the dataset storage schema

SCHEMA = DATASETS[source]
__abstract__ = True[source]
metadata[source]
_receive_before_create(target, connection, **kwargs)[source]

Listen for and creates a new schema for datasets

class simpleml.persistables.base_sqlalchemy.SimplemlCoreSqlalchemy[source]

Bases: BaseSQLAlchemy

Shared metadata for all tables that live in the main schema

__abstract__ = True[source]
metadata[source]
simpleml.persistables.base_sqlalchemy._receive_before_update(mapper, connection, target)[source]

Listen for updates and update modified_timestamp column.