diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-09-02 10:34:44 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-09-02 10:34:44 +0200 | 
| commit | 2c721d268fa474f2efe838b6ec111bae1b64e20b (patch) | |
| tree | 23acef6b9173b44167c19f643ec58ff8a12f0cac /ishtar_common | |
| parent | 5eb8667794636e379a8c324da46c617ad365747a (diff) | |
| download | Ishtar-2c721d268fa474f2efe838b6ec111bae1b64e20b.tar.bz2 Ishtar-2c721d268fa474f2efe838b6ec111bae1b64e20b.zip | |
Fix migration generate_title for strange databases
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/migrations/0058_generate_title.py | 17 | 
1 files changed, 15 insertions, 2 deletions
| diff --git a/ishtar_common/migrations/0058_generate_title.py b/ishtar_common/migrations/0058_generate_title.py index ac0d1d602..3fcb82ee5 100644 --- a/ishtar_common/migrations/0058_generate_title.py +++ b/ishtar_common/migrations/0058_generate_title.py @@ -21,12 +21,25 @@ class Migration(SchemaMigration):          translation.activate('fr')          for key, lbl in TYPE:              lbl = translation.ugettext(lbl) -            keys[key] = orm['ishtar_common.TitleType'].objects.create( -                label=lbl, txt_idx=key.lower()) +            q = orm['ishtar_common.TitleType'].objects.filter( +                txt_idx=key.lower()) +            if not q.count(): +                keys[key] = orm['ishtar_common.TitleType'].objects.create( +                    label=lbl, txt_idx=key.lower()) +            else: +                keys[key] = q.all()[0]          translation.deactivate() +        # translated are also keys +        for k in keys.keys(): +            item = keys[k] +            keys[item.label] = item          for person in orm['ishtar_common.Person'].objects.all():              if not person.old_title:                  continue +            if person.old_title not in keys: +                print(u"For person {} ({} {}) no translation of {}.".format( +                    person.pk, person.name, person.surname, person.old_title)) +                continue              person.title_id = keys[person.old_title].id              person.save() | 
