diff options
author | Jef van Schendel <mail@jefvanschendel.nl> | 2012-02-21 17:43:05 +0100 |
---|---|---|
committer | Jef van Schendel <mail@jefvanschendel.nl> | 2012-02-21 17:43:05 +0100 |
commit | aa8804719c7930181aa7a0af41ca5b983fdf5be4 (patch) | |
tree | ba3f8a30d3b72e6b29bdd71823df2c33d4bb2b27 /mediagoblin/db/mongo/migrations.py | |
parent | 6c2e57304c302acfc005686515ce91d91727dd8d (diff) | |
parent | 99812bbc4a76735824708b341ea283f09a1b423c (diff) | |
download | mediagoblin-aa8804719c7930181aa7a0af41ca5b983fdf5be4.tar.lz mediagoblin-aa8804719c7930181aa7a0af41ca5b983fdf5be4.tar.xz mediagoblin-aa8804719c7930181aa7a0af41ca5b983fdf5be4.zip |
Resolve merge conflicts
Diffstat (limited to 'mediagoblin/db/mongo/migrations.py')
-rw-r--r-- | mediagoblin/db/mongo/migrations.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/mediagoblin/db/mongo/migrations.py b/mediagoblin/db/mongo/migrations.py index 261e21a5..59035f3b 100644 --- a/mediagoblin/db/mongo/migrations.py +++ b/mediagoblin/db/mongo/migrations.py @@ -29,6 +29,16 @@ def add_table_field(db, table_name, field_name, default_value): multi=True) +def drop_table_field(db, table_name, field_name): + """ + Drop an old field from a table/collection + """ + db[table_name].update( + {field_name: {'$exists': True}}, + {'$unset': {field_name: 1}}, + multi=True) + + # Please see mediagoblin/tests/test_migrations.py for some examples of # basic migrations. @@ -115,3 +125,17 @@ def mediaentry_add_license(database): Add the 'license' field for entries that don't have it. """ add_table_field(database, 'media_entries', 'license', None) + + +@RegisterMigration(9) +def remove_calculated_html(database): + """ + Drop pre-rendered html again and calculate things + on the fly (and cache): + - User.bio_html + - MediaEntry.description_html + - MediaComment.content_html + """ + drop_table_field(database, 'users', 'bio_html') + drop_table_field(database, 'media_entries', 'description_html') + drop_table_field(database, 'media_comments', 'content_html') |