Adds convinient EnumDict column to sqlalchemy
Project description
Easy to Use
DeclarativeBase = declarative_base()
DeclarativeBase.query = dbsession.query_property()
class Item(DeclarativeBase):
STATUS = EnumDictForInt.Enum(
('active', {
'db': 0,
'title': 'active',
'other_useful_info': 'Info about active status',
}),
('draft', {
'db': 1,
'title': 'draft',
'other_useful_info': 'Info about draft status',
}),
('deleted', {
'db': 2,
'title': 'deleted',
'other_useful_info': 'Info about deleted status',
}),
)
id = Column(Integer, primary_key=True)
status = Column(EnumDictForInt(STATUS))
@classmethod
def condition_status_active(cls):
return cls.status == cls.STATUS.active # or cls.STATUS.active.db
item = Item.query.filter(Item.condition_status_active()).first()
item.status == Item.STATUS.active # True
print item.status.db, item.status.title # 0, 'active'
Easy to Install
$ pip install Sqlalchemy-Enum-Dict
Links
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
File details
Details for the file SQLAlchemy-Enum-Dict-0.1.2.tar.gz
.
File metadata
- Download URL: SQLAlchemy-Enum-Dict-0.1.2.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0a4173c2dc129840c144b348936add1cd6350e355e5cd20e378a36a5b3e0fa10 |
|
MD5 | 48c5290b0dab76d9837c7e88b3cdd9c4 |
|
BLAKE2b-256 | cb17be7f7f012e978994964599b5a296920e92996a1c305f6e05c79d66e2c718 |