From 570ec8b8057356466894fc73ec2f6012e6381a20 Mon Sep 17 00:00:00 2001
From: Ernesto Rico Schmidt <ernesto@helsinki.at>
Date: Fri, 15 Nov 2024 14:54:07 -0400
Subject: [PATCH] fix: rename line_num -> order in PlaylistEntry, specify
 ordering

---
 ...27_alter_playlistentry_options_and_more.py | 22 +++++++++++++++++++
 program/models.py                             |  3 ++-
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 program/migrations/0127_alter_playlistentry_options_and_more.py

diff --git a/program/migrations/0127_alter_playlistentry_options_and_more.py b/program/migrations/0127_alter_playlistentry_options_and_more.py
new file mode 100644
index 00000000..61fd1beb
--- /dev/null
+++ b/program/migrations/0127_alter_playlistentry_options_and_more.py
@@ -0,0 +1,22 @@
+# Generated by Django 4.2.16 on 2024-11-15 18:44
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ("program", "0126_playlistentry_file_id_or_uri"),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name="playlistentry",
+            options={"ordering": ["playlist", "order"]},
+        ),
+        migrations.RenameField(
+            model_name="playlistentry",
+            old_name="line_num",
+            new_name="order",
+        ),
+    ]
diff --git a/program/models.py b/program/models.py
index 55d40330..23ec5bf2 100644
--- a/program/models.py
+++ b/program/models.py
@@ -615,7 +615,7 @@ def validate_positive_duration(value: float) -> None:
 class PlaylistEntry(models.Model):
     duration = models.FloatField(null=True, validators=[validate_positive_duration])
     file_id = models.IntegerField(null=True)
-    line_num = models.IntegerField(null=False)
+    order = models.IntegerField(null=False)
     playlist = models.ForeignKey(Playlist, on_delete=models.CASCADE, related_name="entries")
     uri = models.CharField(blank=True, max_length=1024)
 
@@ -626,6 +626,7 @@ class PlaylistEntry(models.Model):
                 name="file-id-or-uri",
             )
         ]
+        ordering = ["playlist", "order"]
 
     def __str__(self):
         return f"{self.uri} - {self.duration}" if self.duration else self.uri
-- 
GitLab