Двойной связный список в моделях Django
Я пытаюсь создать музыкальный плеер с помощью Django. на сайте у меня должны быть плейлисты с музыкальными треками. Мне нужно создать две модели: композиция и плейлист. Я уже создал класс Composition:
class Composition(models.Model):
title = models.CharField(max_length=500)
artist = models.CharField(max_length=500)
playlist = models.ForeignKey('PlayList', on_delete=models.SET_NULL, null=True, blank=False)
time_length = models.DecimalField(blank=True, max_digits=20, decimal_places=2)
audio_file = models.FileField(validators=[validate_is_audio])
cover_image = models.ImageField()
Теперь мне нужно создать модель списка воспроизведения class PlayList(models.Model, LinkedList):
, которая, по назначению, должна наследоваться от моего базового класса linked_list, реализующего дважды связанный список. Этот класс имеет методы init(self, first_item=None), append_left(self, item), append_right(self, item), remove(self, item), insert(self, previous, item) и т.д. На сайте я должен буду иметь несколько плейлистов с возможностью выбора. Я впервые использую django, поэтому не знаю, как это реализовать.
Я еще не пробовал создать эту модель, потому что не знаю, с чего начать.