diff --git a/aleksis/apps/chronos/migrations/0002_school_term_validity.py b/aleksis/apps/chronos/migrations/0002_school_term_validity.py
index d43a7146345783544d7f056fb625f6b9bd7a034d..f890a222288307a8a7e93942fa43af2950724548 100644
--- a/aleksis/apps/chronos/migrations/0002_school_term_validity.py
+++ b/aleksis/apps/chronos/migrations/0002_school_term_validity.py
@@ -42,7 +42,7 @@ def migrate_lesson(apps, schema_editor):
 
 class Migration(migrations.Migration):
     dependencies = [
-        ("core", "0003_auto_20200627_1600"),
+        ("core", "0002_school_term"),
         ("sites", "0002_alter_domain_unique"),
         ("chronos", "0001_initial"),
     ]
diff --git a/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py b/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py
new file mode 100644
index 0000000000000000000000000000000000000000..04d0777508fac4500c60a84496567b52cd3e2cec
--- /dev/null
+++ b/aleksis/apps/chronos/migrations/0003_school_term_validity_fixes.py
@@ -0,0 +1,27 @@
+# Generated by Django 3.0.7 on 2020-06-30 10:46
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('chronos', '0002_school_term_validity'),
+    ]
+
+    operations = [
+        migrations.RemoveField(
+            model_name='break',
+            name='school_term',
+        ),
+        migrations.AddField(
+            model_name='break',
+            name='validity',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='chronos.ValidityRange', verbose_name='Linked validity range'),
+        ),
+        migrations.AlterUniqueTogether(
+            name='timeperiod',
+            unique_together={('weekday', 'period', 'validity')},
+        ),
+    ]
diff --git a/aleksis/apps/chronos/models.py b/aleksis/apps/chronos/models.py
index 0331ff3c7515e478686e0e2daeb5e14a9d9c84bd..fc3b5854505ef96d6d315e35c0b416b61de3901f 100644
--- a/aleksis/apps/chronos/models.py
+++ b/aleksis/apps/chronos/models.py
@@ -253,7 +253,7 @@ class TimePeriod(ValidityRangeRelatedExtensibleModel):
         )
 
     class Meta:
-        unique_together = [["weekday", "period"]]
+        unique_together = [["weekday", "period", "validity"]]
         ordering = ["weekday", "period"]
         indexes = [models.Index(fields=["time_start", "time_end"])]
         verbose_name = _("Time period")