If you're using eclipse IDE, you can leverage the templates to write a migration script in no time.
Go to windows -> preferences -> PyDev -> Editor -> Templates
then create a new template with :
- name : Module: Migration SQLA
- context: New Module
- description: SQLA migration
# -*- coding: utf-8 -*-
'''
Created on ${date}
@author: ${user}
'''
from sqlalchemy import *
from migrate import *
meta = MetaData()
def upgrade(migrate_engine):
meta.bind = migrate_engine
some = Table('some', meta, autoload=True)
if not 'somename' in some.columns:
new_col = Column('somename', Unicode(255))
new_col.create(some)
${cursor}
def downgrade(migrate_engine):
meta.bind = migrate_engine
some = Table('some', meta, autoload=True)
some.c.some_col.drop()And that's it ! you can now go into your migrations folder and do:
New -> PyDev Module, and choose your new template