# HG changeset patch # User ymh # Date 1344382354 -7200 # Node ID 51294f20e8adbae7ba627b03108b7fa28268ad7c # Parent 0a483c6b75fa46d97f0f567d84c9adc78188ca4c Correct south migrations diff -r 0a483c6b75fa -r 51294f20e8ad src/ldt/ldt/ldt_utils/migrations/0019_recalculate_media_hash_src.py --- a/src/ldt/ldt/ldt_utils/migrations/0019_recalculate_media_hash_src.py Tue Aug 07 15:40:54 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/migrations/0019_recalculate_media_hash_src.py Wed Aug 08 01:32:34 2012 +0200 @@ -1,12 +1,22 @@ # -*- coding: utf-8 -*- from south.v2 import DataMigration +from ldt.management.utils import show_progress +from ldt.utils import generate_hash class Migration(DataMigration): def forwards(self, orm): "Write your forwards methods here." # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..." - for media in orm['ldt_utils.media'].objects.all(): + + qs = orm['ldt_utils.media'].objects.all() + + count = qs.count() + writer = None + + for i,media in enumerate(qs): + writer = show_progress(i+1, count, "", 50, writer) + media.src_hash = generate_hash(media.src) media.save() def backwards(self, orm): diff -r 0a483c6b75fa -r 51294f20e8ad src/ldt/ldt/ldt_utils/migrations/0021_recalculate_segment_id_hash_script.py --- a/src/ldt/ldt/ldt_utils/migrations/0021_recalculate_segment_id_hash_script.py Tue Aug 07 15:40:54 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/migrations/0021_recalculate_segment_id_hash_script.py Wed Aug 08 01:32:34 2012 +0200 @@ -1,11 +1,19 @@ # -*- coding: utf-8 -*- from south.v2 import DataMigration - +from ldt.management.utils import show_progress +from ldt.utils import generate_hash class Migration(DataMigration): def forwards(self, orm): - for segment in orm['ldt_utils.segment'].objects.all(): + + qs = orm['ldt_utils.segment'].objects.all() + count = qs.count() + writer = None + + for i,segment in enumerate(qs): + writer = show_progress(i+1, count, "", 50, writer) + segment.id_hash = generate_hash("/".join((unicode(segment.project_id), unicode(segment.iri_id), unicode(segment.ensemble_id), unicode(segment.cutting_id), unicode(segment.element_id)))) segment.save() pass diff -r 0a483c6b75fa -r 51294f20e8ad src/ldt/ldt/ldt_utils/models.py --- a/src/ldt/ldt/ldt_utils/models.py Tue Aug 07 15:40:54 2012 +0200 +++ b/src/ldt/ldt/ldt_utils/models.py Wed Aug 08 01:32:34 2012 +0200 @@ -694,9 +694,9 @@ value.difference_update(self.mask[keyword]) return value.pop() - + def save(self, *args, **kwargs): - self.id_hash = generate_hash(str(self)) + self.id_hash = generate_hash(self.__unicode__()) super(Segment, self).save(*args, **kwargs)