diff --git a/MIGRATIONS b/MIGRATIONS index d2f07be8..2c2ef671 100644 --- a/MIGRATIONS +++ b/MIGRATIONS @@ -6,3 +6,5 @@ Jak zvládnout migrace na nový model: - 2130: Definice čísel (23.6 vs 23.7) - 2143: Gravitace ve Flatlandu (23.4 vs 23.6) - 1954: Chceme vodu (nepublikováno) (21.3 vs 21.6) + +- V mojí verzi databáze mají úlohy-Problémy typ "b'uloha'" diff --git a/seminar/migrations/0084_clanek_cislo.py b/seminar/migrations/0084_clanek_cislo.py index 5de1fefa..7a211fa6 100644 --- a/seminar/migrations/0084_clanek_cislo.py +++ b/seminar/migrations/0084_clanek_cislo.py @@ -4,6 +4,9 @@ from django.db import migrations, models import django.db.models.deletion from seminar.treelib import get_parent +import logging +logger = logging.getLogger(__name__) + def najdi_cislo(apps, schema_editor): Clanek = apps.get_model('seminar', 'Clanek') Hodnoceni = apps.get_model('seminar', 'Hodnoceni') @@ -15,7 +18,10 @@ def najdi_cislo(apps, schema_editor): for c in Clanek.objects.all(): reseni = c.reseni_set if (reseni.count() != 1): # Pozor, reseni_set je Manager, takže se na něj musí trošku jinak - raise ValueError("Článek k sobě má nejedno řešení!") + logger.warn(f"Více než jedno řešení pro článek {c}") + c.cislo = None + c.save() + continue r = reseni.first() aktualniNode = r.text_cely # Hlavní ReseniNode pro řešení while aktualniNode is not None: