def run_migration(self, migration_file, method='upgrade'):
if RedVersion.already_run(migration_file):
self.logger.warn("Migration %s has already been run, skipping." % migration_file)
return
try:
module = importlib.import_module('redberry.models.migrations.%s' % migration_file)
if method == 'upgrade':
self.logger.info("Running upgrade on %s" % migration_file)
module.upgrade(self.db)
else:
self.logger.info("Running downgrade on %s" % migration_file)
module.downgrade(self.db)
RedVersion.store_migration(migration_file)
except Exception, e:
self.logger.error("Error running %s" % migration_file)
self.logger.error(e)
评论列表
文章目录