diff options
Diffstat (limited to 'mediagoblin/db/migrations.py')
-rw-r--r-- | mediagoblin/db/migrations.py | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/mediagoblin/db/migrations.py b/mediagoblin/db/migrations.py index 17f8bef4..c94fbda0 100644 --- a/mediagoblin/db/migrations.py +++ b/mediagoblin/db/migrations.py @@ -31,6 +31,7 @@ from mediagoblin.db.migration_tools import ( RegisterMigration, inspect_table, replace_table_hack) from mediagoblin.db.models import (MediaEntry, Collection, MediaComment, User, Privilege) +from mediagoblin.db.extratypes import JSONEncoded, MutationDict MIGRATIONS = {} @@ -707,6 +708,7 @@ def create_moderation_tables(db): is_admin.drop() db.commit() + @RegisterMigration(19, MIGRATIONS) def drop_MediaEntry_collected(db): """ @@ -721,6 +723,20 @@ def drop_MediaEntry_collected(db): db.commit() + +@RegisterMigration(20, MIGRATIONS) +def add_metadata_column(db): + metadata = MetaData(bind=db.bind) + + media_entry = inspect_table(metadata, 'core__media_entries') + + col = Column('media_metadata', MutationDict.as_mutable(JSONEncoded), + default=MutationDict()) + col.create(media_entry) + + db.commit() + + class PrivilegeUserAssociation_R1(declarative_base()): __tablename__ = 'rename__privileges_users' user_id = Column( @@ -732,7 +748,8 @@ class PrivilegeUserAssociation_R1(declarative_base()): ForeignKey(Privilege.id), primary_key=True) -@RegisterMigration(20, MIGRATIONS) + +@RegisterMigration(21, MIGRATIONS) def fix_privilege_user_association_table(db): """ There was an error in the PrivilegeUserAssociation table that allowed for a |