From bd3a809d8517b22f2427a76e49d155e30277c5fe Mon Sep 17 00:00:00 2001 From: Anatoly Date: Wed, 23 Oct 2019 16:47:57 +0300 Subject: [PATCH] fix migrations --- .../0039_establishmentsubtype_index_name.py | 2 +- .../migrations/0022_auto_20191023_1113.py | 24 +++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/apps/establishment/migrations/0039_establishmentsubtype_index_name.py b/apps/establishment/migrations/0039_establishmentsubtype_index_name.py index a29b1ae0..cf35010a 100644 --- a/apps/establishment/migrations/0039_establishmentsubtype_index_name.py +++ b/apps/establishment/migrations/0039_establishmentsubtype_index_name.py @@ -8,7 +8,7 @@ def fill_establishment_subtype(apps, schema_editor): # version than this migration expects. We use the historical version. EstablishmentSubType = apps.get_model('establishment', 'EstablishmentSubType') for n, et in enumerate(EstablishmentSubType.objects.all()): - et.index_name = f'Type {n}' + et.index_name = 'Type %s' % n et.save() diff --git a/apps/main/migrations/0022_auto_20191023_1113.py b/apps/main/migrations/0022_auto_20191023_1113.py index 0a190b23..6ed60051 100644 --- a/apps/main/migrations/0022_auto_20191023_1113.py +++ b/apps/main/migrations/0022_auto_20191023_1113.py @@ -5,6 +5,16 @@ import django.db.models.deletion import utils.models +def fill_currency_name(apps, schema_editor): + # We can't import the Person model directly as it may be a newer + # version than this migration expects. We use the historical version. + Currency = apps.get_model('main', 'Currency') + for currency in Currency.objects.all(): + currency.name_json = {'en-GB': currency.name} + currency.save() + + + class Migration(migrations.Migration): dependencies = [ @@ -29,9 +39,19 @@ class Migration(migrations.Migration): name='currency', field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.PROTECT, to='main.Currency'), ), - migrations.AlterField( + migrations.AddField( model_name='currency', - name='name', + name='name_json', field=utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"some text"}', null=True, verbose_name='name'), ), + migrations.RunPython(fill_currency_name, migrations.RunPython.noop), + migrations.RemoveField( + model_name='currency', + name='name', + ), + migrations.RenameField( + model_name='currency', + old_name='name_json', + new_name='name', + ), ]