mirror of
https://gitlab.science.ru.nl/technicie/MarietjeDjango.git
synced 2025-12-10 09:02:20 +01:00
Marietje 4.1: Addition of Django REST framework, Swagger, Dark mode and updates to Django and Bootstrap
This commit is contained in:
@ -3,62 +3,34 @@ from django.conf import settings
|
||||
|
||||
|
||||
class Song(models.Model):
|
||||
user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL,
|
||||
on_delete=models.SET_NULL,
|
||||
blank=True,
|
||||
null=True,
|
||||
db_index=True)
|
||||
artist = models.CharField(
|
||||
max_length=200, db_index=True, help_text='track artist')
|
||||
title = models.CharField(
|
||||
max_length=200, db_index=True, help_text='track title')
|
||||
hash = models.CharField(
|
||||
max_length=64, help_text="track file's SHA256 hash")
|
||||
duration = models.IntegerField(help_text='track duration in seconds')
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, blank=True, null=True, db_index=True)
|
||||
artist = models.CharField(max_length=200, db_index=True, help_text="track artist")
|
||||
title = models.CharField(max_length=200, db_index=True, help_text="track title")
|
||||
hash = models.CharField(max_length=64, help_text="track file's SHA256 hash")
|
||||
duration = models.IntegerField(help_text="track duration in seconds")
|
||||
rg_gain = models.DecimalField(
|
||||
max_digits=9,
|
||||
decimal_places=6,
|
||||
blank=True,
|
||||
null=True,
|
||||
help_text='replaygain gain level')
|
||||
max_digits=9, decimal_places=6, blank=True, null=True, help_text="replaygain gain level"
|
||||
)
|
||||
rg_peak = models.DecimalField(
|
||||
max_digits=9,
|
||||
decimal_places=6,
|
||||
blank=True,
|
||||
null=True,
|
||||
help_text='replaygain peak level')
|
||||
max_digits=9, decimal_places=6, blank=True, null=True, help_text="replaygain peak level"
|
||||
)
|
||||
old_id = models.TextField(blank=True, null=True, default=None)
|
||||
deleted = models.BooleanField(
|
||||
verbose_name='unlisted',
|
||||
default=False,
|
||||
db_index=True,
|
||||
help_text='hide this song from the search listings')
|
||||
verbose_name="unlisted", default=False, db_index=True, help_text="hide this song from the search listings"
|
||||
)
|
||||
|
||||
def report(self, user, note):
|
||||
report_note = ReportNote(song=self, user=user, note=note)
|
||||
report_note.save()
|
||||
|
||||
def __str__(self):
|
||||
return self.artist + ' - ' + self.title
|
||||
return self.artist + " - " + self.title
|
||||
|
||||
|
||||
class ReportNote(models.Model):
|
||||
song = models.ForeignKey(
|
||||
Song,
|
||||
on_delete=models.CASCADE,
|
||||
blank=False,
|
||||
null=False,
|
||||
db_index=True)
|
||||
user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL,
|
||||
on_delete=models.CASCADE,
|
||||
blank=True,
|
||||
null=True,
|
||||
db_index=True)
|
||||
note = models.TextField(
|
||||
verbose_name='reason',
|
||||
blank=True,
|
||||
help_text='reason for edit request')
|
||||
song = models.ForeignKey(Song, on_delete=models.CASCADE, blank=False, null=False, db_index=True)
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, blank=True, null=True, db_index=True)
|
||||
note = models.TextField(verbose_name="reason", blank=True, help_text="reason for edit request")
|
||||
|
||||
def __str__(self):
|
||||
return "{song.artist} - {song.title}: '{note}'".format(song=self.song, note=self.note)
|
||||
|
||||
Reference in New Issue
Block a user