From e3cc6d15a3db64161254613eea5c684dc6d16423 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Mon, 23 Dec 2024 16:43:41 +0100 Subject: [PATCH] data migrate pydantic field better cause the validator is crap --- .../migrations/0124_beaconmeasurement_data_schema.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/c3nav/mapdata/migrations/0124_beaconmeasurement_data_schema.py b/src/c3nav/mapdata/migrations/0124_beaconmeasurement_data_schema.py index 4875a7d9..0de9f10f 100644 --- a/src/c3nav/mapdata/migrations/0124_beaconmeasurement_data_schema.py +++ b/src/c3nav/mapdata/migrations/0124_beaconmeasurement_data_schema.py @@ -15,7 +15,13 @@ def forwards_func(apps, schema_editor): for measurement in BeaconMeasurement.objects.all(): if isinstance(measurement.data, list): measurement.data = {"wifi": measurement.data} - measurement.save() + measurement.data["wifi"] = [ + [{**{k: v for k, v in peer.items() if k != "level"}, "rssi": peer.get("level", peer.get("rssi"))} + for peer in scan] + for scan in measurement.data["wifi"] + ] + measurement.save() + class Migration(migrations.Migration):