forked from rc/aircox
aircox/views/episode: add name, url and delete properties as sound data available to vuejs
This commit is contained in:
parent
4f28e884ae
commit
ff9cfd4a89
|
@ -5,7 +5,7 @@ from django.urls import reverse
|
|||
from django.utils.translation import gettext_lazy as _
|
||||
from django.views.generic.base import View
|
||||
|
||||
from aircox.models import Episode, Program, StaticPage, Track
|
||||
from aircox.models import Episode, Program, StaticPage, Sound, Track
|
||||
from aircox import forms, filters, permissions
|
||||
|
||||
from .mixins import VueFormDataMixin
|
||||
|
@ -144,6 +144,14 @@ class EpisodeUpdateView(UserPassesTestMixin, VueFormDataMixin, PageUpdateView):
|
|||
for key in ("soundlist_formset", "tracklist_formset"):
|
||||
formset = kwargs[key]
|
||||
kwargs[f"{key}_data"] = self.get_formset_data(formset, {"episode": self.object.id})
|
||||
|
||||
for i, episode_sound in enumerate(kwargs["soundlist_formset_data"]["initials"]):
|
||||
# annotate sound properties for vuejs
|
||||
sound = Sound.objects.get(id=episode_sound["sound"])
|
||||
kwargs["soundlist_formset_data"]["initials"][i]["name"] = sound.name
|
||||
kwargs["soundlist_formset_data"]["initials"][i]["url"] = sound.file.url
|
||||
kwargs["soundlist_formset_data"]["initials"][i]["delete_attr_name"] = f"sounds-{i}-DELETE"
|
||||
|
||||
return super().get_context_data(**kwargs)
|
||||
|
||||
def post(self, request, *args, **kwargs):
|
||||
|
|
Loading…
Reference in New Issue
Block a user