X-Git-Url: http://git.veekun.com/zzz-spline-users.git/blobdiff_plain/61467d3f78bc332dda9642d7f04a94dffadd8b3d..2fcca859668a4d3f86377bd9d74787e23021321c:/migration/versions/004_Add_user_stash.py diff --git a/migration/versions/004_Add_user_stash.py b/migration/versions/004_Add_user_stash.py new file mode 100644 index 0000000..67da19f --- /dev/null +++ b/migration/versions/004_Add_user_stash.py @@ -0,0 +1,29 @@ +from sqlalchemy import * +from migrate import * +import migrate.changeset # monkeypatches Column + +import json + +from sqlalchemy import orm +from sqlalchemy.ext.declarative import declarative_base +TableBase = declarative_base() + + +class User(TableBase): + __tablename__ = 'users' + id = Column(Integer, primary_key=True) + name = Column(Unicode(length=20), nullable=False) + unique_identifier = Column(Unicode(length=32), nullable=False) + stash = Column(PickleType(pickler=json), nullable=True, default={}) + + +def upgrade(migrate_engine): + TableBase.metadata.bind = migrate_engine + + User.__table__.c.stash.create(table=User.__table__) + User.__table__.c.stash.alter(nullable=False) + +def downgrade(migrate_engine): + TableBase.metadata.bind = migrate_engine + + User.__table__.c.stash.drop()