From e4b989f51a7a89e51c57f66ae18a42380286ead9 Mon Sep 17 00:00:00 2001 From: Eliot Berriot Date: Tue, 24 Mar 2020 10:31:07 +0100 Subject: [PATCH] Fixed empty results issue when browsing library with playable filter --- api/funkwhale_api/music/filters.py | 7 ++++--- front/src/views/library/DetailBase.vue | 2 -- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/api/funkwhale_api/music/filters.py b/api/funkwhale_api/music/filters.py index 60a9e5f86..ca22467cb 100644 --- a/api/funkwhale_api/music/filters.py +++ b/api/funkwhale_api/music/filters.py @@ -58,7 +58,8 @@ class LibraryFilterSet(filters.FilterSet): uploads = models.Upload.objects.filter(library=library) uploads = uploads.playable_by(actor) ids = uploads.values_list(self.Meta.library_filter_field, flat=True) - return queryset.filter(pk__in=ids) + qs = queryset.filter(pk__in=ids).distinct() + return qs class ArtistFilter( @@ -88,7 +89,7 @@ class ArtistFilter( def filter_playable(self, queryset, name, value): actor = utils.get_actor_from_request(self.request) - return queryset.playable_by(actor, value) + return queryset.playable_by(actor, value).distinct() class TrackFilter( @@ -127,7 +128,7 @@ class TrackFilter( def filter_playable(self, queryset, name, value): actor = utils.get_actor_from_request(self.request) - return queryset.playable_by(actor, value) + return queryset.playable_by(actor, value).distinct() class UploadFilter(audio_filters.IncludeChannelsFilterSet): diff --git a/front/src/views/library/DetailBase.vue b/front/src/views/library/DetailBase.vue index b480d189e..48ebd0629 100644 --- a/front/src/views/library/DetailBase.vue +++ b/front/src/views/library/DetailBase.vue @@ -105,13 +105,11 @@ - -