Manager for model, methods added in runtime to query.
Installation
$ [sudo] pip install sqlalchemy-manager
Documentation
alchmanager.ManagedQuery
Manager for Query.
Example
from sqlalchemy.orm import sessionmaker
from alchmanager import ManagedQuery, ManagedSession
engine = create_engine('sqlite:///:memory:')
session = sessionmaker(query_cls=ManagedQuery,
bind=engine)()
Base = declarative_base()
class MainManager:
@staticmethod
def is_index(query):
return query.filter_by(is_index=True)
@staticmethod
def is_public(query):
return query.filter_by(is_public=True)
class Test(Base):
id = Column(Integer, primary_key=True)
is_public = Column(Boolean, default=False)
is_index = Column(Boolean)
__manager__ = MainManager
session.query(Video).is_index().filter_by(id=1).is_public()
alchmanager.ManagedSession
Manager for Session. Decorator load_manager() for register methods into session.
Example
from sqlalchemy.orm import sessionmaker
from alchmanager import ManagedQuery, ManagedSession
engine = create_engine('sqlite:///:memory:')
session = sessionmaker(class_=ManagedSession,
bind=engine)()
@session.load_manager()
class MainSessionManager:
@staticmethod
def published(query):
return query.filter_by(is_public=True)
@staticmethod
def has_index(query):
return query.filter_by(is_index=True)
session.query(TestModel).has_index().published().count()
Release files for sqlalchemy-manager 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sqlalchemy-manager-0.0.2.tar.gz | 2.9 kB | Details |
Release files / sqlalchemy-manager-0.0.2.tar.gz
| Download URL | sqlalchemy-manager-0.0.2.tar.gz |
|---|---|
| Size | 2.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c241d8435eeaa14f9d4c320e7f551c4690017b68b2b148742ff32555c95b720f
|
|
BLAKE2b-256 checksum How to use checksums |
9134d06bbc1018d9f387e7fb69d1609b772d27e084f62496c582b767852d6cfd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |