diff --git a/playlist/models/track.py b/playlist/models/track.py index 7ecbc55..3a3516e 100644 --- a/playlist/models/track.py +++ b/playlist/models/track.py @@ -1,4 +1,5 @@ from django.db import models +from django.contrib.auth.models import User from random import choice from .album import Album from .artist import Artist @@ -44,6 +45,7 @@ class Track(models.Model): id = models.CharField(primary_key=True, max_length=128) + nominated_by = models.ForeignKey(User, null=True, default=None, on_delete=models.SET_NULL) name = models.CharField(max_length=255) artists = models.ManyToManyField(Artist) album = models.ForeignKey(Album, null=True, on_delete=models.SET_NULL) diff --git a/playlist/views.py b/playlist/views.py index c6ae980..e60bc4f 100644 --- a/playlist/views.py +++ b/playlist/views.py @@ -81,7 +81,9 @@ class NominateView(LoginRequiredMixin, View): if track.old: track.old = False + track.nominated_by = request.user track.save() + get_banter.delay(track.id) return TemplateResponse(request, "Nominate.html", { "message_type": "warning", "message": "Hey een klassieker.", @@ -121,6 +123,7 @@ class NominateView(LoginRequiredMixin, View): # Track track = from_json(Track, json) + track.nominated_by = request.user for artist in track_artists: track.artists.add(artist) track.save()