making SQLAlchemy great again
Project description
SQLAlchemy Lightening
===
Making SQLAlchemy great again
#### Install
```pip install sqlalchemy_ligthening```
#### Usage
```
# load by id
Person.get(1)
# load multiple by id
Person.get(1, 2, 3)
# or
Person.get([1, 2, 3])
# basic filter
Person.where(name='dpepper')
# where `name` in ...
Person.where(name=['dpepper', 'thatguy'])
# mix and match
Person.where(Person.id != 1, name='dpepper')
# standard utilities
Person.all
Person.first
# standard SQLAlchemy query
Person.query
```
## Example Setup
```
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from sqlalchemy_lightening import LighteningBase
# create base sqlalchemy model
Base = declarative_base()
# extend LighteningBase mixin
class Person(LighteningBase, Base):
id = Column(Integer, primary_key=True)
name = Column(String(250))
engine = create_engine('sqlite:///:memory:')
session = sessionmaker(bind=engine)()
Base.metadata.create_all(engine)
Base.metadata.bind = engine
# wire things up
LighteningBase.query_class = session.query
# good to go
Person.winning
```
===
Making SQLAlchemy great again
#### Install
```pip install sqlalchemy_ligthening```
#### Usage
```
# load by id
Person.get(1)
# load multiple by id
Person.get(1, 2, 3)
# or
Person.get([1, 2, 3])
# basic filter
Person.where(name='dpepper')
# where `name` in ...
Person.where(name=['dpepper', 'thatguy'])
# mix and match
Person.where(Person.id != 1, name='dpepper')
# standard utilities
Person.all
Person.first
# standard SQLAlchemy query
Person.query
```
## Example Setup
```
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from sqlalchemy_lightening import LighteningBase
# create base sqlalchemy model
Base = declarative_base()
# extend LighteningBase mixin
class Person(LighteningBase, Base):
id = Column(Integer, primary_key=True)
name = Column(String(250))
engine = create_engine('sqlite:///:memory:')
session = sessionmaker(bind=engine)()
Base.metadata.create_all(engine)
Base.metadata.bind = engine
# wire things up
LighteningBase.query_class = session.query
# good to go
Person.winning
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for sqlalchemy_lightening-0.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02c587f4418333b1cdff22a736b521469c0e72f6fd53f6a9ccfc3ec0c25ffa24 |
|
MD5 | f6893e589b28a31dfd60fbdf3c2e9c0d |
|
BLAKE2b-256 | a955f5dbc28387e3495ba82f54b5ccd0986cfa11b9b6411dfccfd9b6252cf256 |