diff options
Diffstat (limited to 'mediagoblin/db/migration_tools.py')
-rw-r--r-- | mediagoblin/db/migration_tools.py | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/mediagoblin/db/migration_tools.py b/mediagoblin/db/migration_tools.py index f100f47e..ad137683 100644 --- a/mediagoblin/db/migration_tools.py +++ b/mediagoblin/db/migration_tools.py @@ -29,7 +29,7 @@ class MigrationManager(object): to the latest migrations, etc. """ - def __init__(self, name, models, migration_registry, session, + def __init__(self, name, models, foundations, migration_registry, session, printer=simple_printer): """ Args: @@ -40,6 +40,7 @@ class MigrationManager(object): """ self.name = unicode(name) self.models = models + self.foundations = foundations self.session = session self.migration_registry = migration_registry self._sorted_migrations = None @@ -145,11 +146,11 @@ class MigrationManager(object): Create the table foundations (default rows) as layed out in FOUNDATIONS in mediagoblin.db.models """ - from mediagoblin.db.models import FOUNDATIONS as MAIN_FOUNDATIONS - for Model in MAIN_FOUNDATIONS.keys(): - for parameters in MAIN_FOUNDATIONS[Model]: - row = Model(*parameters) - row.save() + for Model, rows in self.foundations.items(): + print u'\n + Laying foundations for %s table' % (Model.__name__) + for parameters in rows: + new_row = Model(**parameters) + new_row.save() def create_new_migration_record(self): """ @@ -186,8 +187,7 @@ class MigrationManager(object): if self.name == u'__main__': return u"main mediagoblin tables" else: - # TODO: Use the friendlier media manager "human readable" name - return u'media type "%s"' % self.name + return u'plugin "%s"' % self.name def init_or_migrate(self): """ @@ -214,10 +214,9 @@ class MigrationManager(object): self.init_tables() # auto-set at latest migration number - self.create_new_migration_record() - if self.name==u'__main__': - self.populate_table_foundations() - + self.create_new_migration_record() + self.populate_table_foundations() + self.printer(u"done.\n") self.set_current_migration() return u'inited' |