simpleml.persistables.base_sqlalchemy module

Base class for sqlalchemy

class simpleml.persistables.base_sqlalchemy.BaseSQLAlchemy(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.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

created_timestamp = Column(None, DateTime(timezone=True), table=None, nullable=False, server_default=DefaultClause(<sqlalchemy.sql.functions.now at 0x7f3fd07d5860; now>, for_update=False))
classmethod filter(*filters)[source]
modified_timestamp = Column(None, DateTime(timezone=True), table=None)
classmethod query_by(*queries)[source]