The pythonic_sqlalchemy_query module provides concise, Pythonic query syntax for SQLAlchemy. For example, these two queries produce identical results:
pythonic_query = session.User['jack'].addresses['jack@google.com']
traditional_query = (
# Ask for the Address...
session.query(Address).
# by querying a User named 'jack'...
select_from(User).filter(User.name == 'jack').
# then joining this to the Address 'jack@google.com`.
join(Address).filter(Address.email_address == 'jack@google.com')
Installation¶
pip install pythonic_sqlalchemy_query
Use with SQLAlchemy¶
For most cases:
from pythonic_sqlalchemy_query import QueryMakerSession
# Construct an engine as usual.
engine = create_engine(...)
# Create a session aware of this module.
Session = sessionmaker(bind=engine, class_=QueryMakerSession)
session = Session()
# After defining some declarative classes, query away:
for result in session.User['jack'].addresses:
# Do some processing on result...
The examples provide full, working code.
Use with Flask-SQLAlchemy¶
For most cases:
from pythonic_sqlalchemy_query.flask import SQLAlchemyPythonicQuery
app = Flask(__name__)
db = SQLAlchemyPythonicQuery(app)
# After defining some declarative classes, query away:
for result in User['jack'].addresses:
# Do some processing on result...
The examples provide full, working code.
Documentation¶
See the pythonic_sqlalchemy_query module.
License¶
This software is distributed under the terms of the MIT license.