From 82c2e19ed50be9c89602367fe25ba01635a09f15 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sun, 14 Apr 2013 00:35:23 +0200 Subject: [PATCH] Fixed remaining issues with migrating the attribute changes. --- .../migrations/0018_convert_attrdata.py | 29 ++++++++++--------- .../migrations/0011_convert_attrdata.py | 7 +++-- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/players/migrations/0018_convert_attrdata.py b/src/players/migrations/0018_convert_attrdata.py index 3e928b4df..343bd030a 100644 --- a/src/players/migrations/0018_convert_attrdata.py +++ b/src/players/migrations/0018_convert_attrdata.py @@ -270,7 +270,9 @@ class PackedSet(set): class Migration(DataMigration): - + depends_on = ( + ("objects", "0018_add_picklefield"), + ) def forwards(self, orm): "Write your forwards methods here." # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..." @@ -298,8 +300,7 @@ class Migration(DataMigration): """ Convert db-stored dbref back to object """ - mclass = orm[data.db_model].model_class() - #mclass = CTYPEGET(model=data.db_model).model_class() + mclass = CTYPEGET(model=data.db_model).model_class() try: return mclass.objects.get(id=data.id) @@ -343,18 +344,18 @@ class Migration(DataMigration): # all types of iterables return iter_id2db(data) - if not db.dry_run: - for attr in orm['players.PlayerAttribute'].objects.all(): - # repack attr into new format and reimport - datatuple = loads(to_str(attr.db_value)) - python_data = from_attr(datatuple) - new_data = to_pickle(python_data) - attr.db_value2 = new_data # new pickleObjectField - attr.save() + if not db.dry_run: + for attr in orm['players.PlayerAttribute'].objects.all(): + # repack attr into new format and reimport + datatuple = loads(to_str(attr.db_value)) + python_data = from_attr(datatuple) + new_data = to_pickle(python_data) + attr.db_value2 = new_data # new pickleObjectField + attr.save() - def backwards(self, orm): - "Write your backwards methods here." - raise RuntimeError("This migration cannot be reversed.") + def backwards(self, orm): + "Write your backwards methods here." + raise RuntimeError("This migration cannot be reversed.") models = { 'auth.group': { diff --git a/src/scripts/migrations/0011_convert_attrdata.py b/src/scripts/migrations/0011_convert_attrdata.py index f0208320a..0c09d4779 100644 --- a/src/scripts/migrations/0011_convert_attrdata.py +++ b/src/scripts/migrations/0011_convert_attrdata.py @@ -334,6 +334,10 @@ def to_attr(data): class Migration(DataMigration): + depends_on = ( + ("objects", "0018_add_picklefield"), + ) + def forwards(self, orm): "Write your forwards methods here." # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..." @@ -361,8 +365,7 @@ class Migration(DataMigration): """ Convert db-stored dbref back to object """ - mclass = orm[data.db_model].model_class() - #mclass = CTYPEGET(model=data.db_model).model_class() + mclass = CTYPEGET(model=data.db_model).model_class() try: return mclass.objects.get(id=data.id)