diff options
Diffstat (limited to 'ishtar_common/migrations')
| -rw-r--r-- | ishtar_common/migrations/0265_cached_town.py | 53 | ||||
| -rw-r--r-- | ishtar_common/migrations/0266_migrate_cached_town.py | 37 |
2 files changed, 90 insertions, 0 deletions
diff --git a/ishtar_common/migrations/0265_cached_town.py b/ishtar_common/migrations/0265_cached_town.py new file mode 100644 index 000000000..01f392e78 --- /dev/null +++ b/ishtar_common/migrations/0265_cached_town.py @@ -0,0 +1,53 @@ +# Generated by Django 2.2.24 on 2025-10-24 12:39 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0264_source_type_add_order'), + ] + + operations = [ + migrations.AddField( + model_name='historicalorganization', + name='cached_town', + field=models.TextField(blank=True, default='', verbose_name='Cached town'), + ), + migrations.AddField( + model_name='historicalperson', + name='cached_person_types', + field=models.TextField(blank=True, default='', verbose_name='Cached person types'), + ), + migrations.AddField( + model_name='historicalperson', + name='cached_town', + field=models.TextField(blank=True, default='', verbose_name='Cached town'), + ), + migrations.AddField( + model_name='organization', + name='cached_town', + field=models.TextField(blank=True, default='', verbose_name='Cached town'), + ), + migrations.AddField( + model_name='person', + name='cached_person_types', + field=models.TextField(blank=True, default='', verbose_name='Cached person types'), + ), + migrations.AddField( + model_name='person', + name='cached_town', + field=models.TextField(blank=True, default='', verbose_name='Cached town'), + ), + migrations.AddField( + model_name='historicalperson', + name='cached_profiles', + field=models.TextField(blank=True, default='', verbose_name='Cached profiles'), + ), + migrations.AddField( + model_name='person', + name='cached_profiles', + field=models.TextField(blank=True, default='', verbose_name='Cached profiles'), + ), + ] diff --git a/ishtar_common/migrations/0266_migrate_cached_town.py b/ishtar_common/migrations/0266_migrate_cached_town.py new file mode 100644 index 000000000..e5904a5c5 --- /dev/null +++ b/ishtar_common/migrations/0266_migrate_cached_town.py @@ -0,0 +1,37 @@ +# Generated by Django 2.2.24 on 2025-10-24 12:59 + +from django.db import migrations + + +def _generate_cached_town(Town, town): + if town.precise_town_id: + return Town.objects.get(id=town.precise_town_id).name + return town.town or "" + + +def migrate_cached_towns(apps, __): + Town = apps.get_model("ishtar_common", "Town") + Person = apps.get_model("ishtar_common", "Person") + for person in Person.objects.all(): + Person.objects.filter(pk=person.pk).update( + cached_town=_generate_cached_town(Town, person), + cached_person_types=", ".join(pt.label for pt in person.person_types.all()), + cached_profiles=", ".join(set([p.profile_type.label + for p in person.profiles.all()])) + ) + Organization = apps.get_model("ishtar_common", "Organization") + for organization in Organization.objects.all(): + Organization.objects.filter(pk=organization.pk).update( + cached_town=_generate_cached_town(Town, organization), + ) + + +class Migration(migrations.Migration): + + dependencies = [ + ('ishtar_common', '0265_cached_town'), + ] + + operations = [ + migrations.RunPython(migrate_cached_towns) + ] |
