diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-10-24 15:05:28 +0200 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-10-24 18:20:47 +0200 |
| commit | ced53a87545352e43c0c2f71103f706d8868aaf7 (patch) | |
| tree | e163edb8604fa77cf38a589ca6433e249b74e60e /archaeological_warehouse/migrations/0125_migrate_cached_town.py | |
| parent | 83a91075308b7864a410bb9285d34ec58e6535cb (diff) | |
| download | Ishtar-ced53a87545352e43c0c2f71103f706d8868aaf7.tar.bz2 Ishtar-ced53a87545352e43c0c2f71103f706d8868aaf7.zip | |
🐛 ✨ person, organization tables: fix and optimize town name and person type list (refs #6441)
Diffstat (limited to 'archaeological_warehouse/migrations/0125_migrate_cached_town.py')
| -rw-r--r-- | archaeological_warehouse/migrations/0125_migrate_cached_town.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/archaeological_warehouse/migrations/0125_migrate_cached_town.py b/archaeological_warehouse/migrations/0125_migrate_cached_town.py new file mode 100644 index 000000000..49f914185 --- /dev/null +++ b/archaeological_warehouse/migrations/0125_migrate_cached_town.py @@ -0,0 +1,29 @@ +# 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") + Warehouse = apps.get_model("archaeological_warehouse", "Warehouse") + for warehouse in Warehouse.objects.all(): + Warehouse.objects.filter(pk=warehouse.pk).update( + cached_town=_generate_cached_town(Town, warehouse), + ) + + +class Migration(migrations.Migration): + + dependencies = [ + ('archaeological_warehouse', '0124_warehouse_cached_town'), + ] + + operations = [ + migrations.RunPython(migrate_cached_towns) + ] |
