correctly filter content by related subscription

This commit is contained in:
Corban-Lee Jones 2024-09-29 19:07:43 +01:00
parent 711407bc58
commit c364869170

View File

@ -172,14 +172,15 @@ class Subscription_DetailView(ChangableDetailView):
class Content_ListView(ListCreateView):
filterset_fields = ("id", "subscription", "item_id", "item_guid", "item_url", "item_title", "item_content_hash")
filterset_fields = ("id", "subscription", "subscription__server", "item_id", "item_guid", "item_url", "item_title", "item_content_hash")
search_fields = ("item_id", "item_guid", "item_url", "item_title", "item_content_hash")
ordering_fields = ("id", "subscription", "item_id", "item_guid", "item_url", "item_title", "item_content_hash")
serializer_class = ContentSerializer
def get_queryset(self):
servers = ServerMember.objects.filter(user=self.request.user).values_list("server", flat=True)
return Content.objects.filter(server__in=servers)
subscriptions = Subscription.objects.filter(server__in=servers).values_list("id", flat=True)
return Content.objects.filter(subscription__in=subscriptions).order_by("-subscription__created_at", "id")
class Content_DetailView(ChangableDetailView):
@ -187,7 +188,8 @@ class Content_DetailView(ChangableDetailView):
def get_queryset(self):
servers = ServerMember.objects.filter(user=self.request.user).values_list("server", flat=True)
return Content.objects.filter(server__in=servers)
subscriptions = Subscription.objects.filter(server__in=servers).values_list("id", flat=True)
return Content.objects.filter(subscription__in=subscriptions).order_by("-subscription__created_at", "id")
class UniqueContentRule_ListView(ListCreateView):