[charts] Clean up how they're displayed
This commit is contained in:
@ -135,9 +135,9 @@ class ChartContextMixin:
|
||||
return context
|
||||
|
||||
media_type_map = {
|
||||
"music.Artist": "artist",
|
||||
"music.Album": "album",
|
||||
"music.Track": "track",
|
||||
"music.artist": "artist",
|
||||
"music.album": "album",
|
||||
"music.track": "track",
|
||||
"videos.video": "video",
|
||||
"videos.series": "tv_series",
|
||||
"podcasts.podcast": "podcast",
|
||||
@ -151,10 +151,17 @@ class ChartContextMixin:
|
||||
media_type = media_type_map.get(model_label)
|
||||
|
||||
if media_type:
|
||||
context["charts"] = ChartRecord.objects.filter(
|
||||
charts_qs = ChartRecord.objects.filter(
|
||||
**{media_type: obj}, rank__in=[1, 2, 3]
|
||||
).exclude(day__isnull=False)
|
||||
|
||||
from collections import OrderedDict
|
||||
|
||||
grouped = OrderedDict()
|
||||
for chart in charts_qs:
|
||||
grouped.setdefault(chart.period_type, []).append(chart)
|
||||
context["charts"] = grouped
|
||||
|
||||
return context
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user