From 8b021af276a2eb583fe962098b28459764f84b88 Mon Sep 17 00:00:00 2001 From: Radek Czajka Date: Tue, 28 Apr 2026 15:21:48 +0200 Subject: [PATCH 1/1] Query lists for book. --- src/social/api/urls2.py | 1 + src/social/api/views.py | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/social/api/urls2.py b/src/social/api/urls2.py index f66223e1b..8f1dc150c 100644 --- a/src/social/api/urls2.py +++ b/src/social/api/urls2.py @@ -19,6 +19,7 @@ urlpatterns = [ path('lists//', views.ListView.as_view()), path('lists//items/', views.ListItemListViewV3.as_view()), path('list-items/', views.ListItemsView.as_view()), + path('list-items/book//', views.ListItemsForBook.as_view()), path('list-items//', views.ListItemViewV3.as_view()), path('lists///', views.ListItemViewV2.as_view()), diff --git a/src/social/api/views.py b/src/social/api/views.py index 0ea769c4e..2a57ad3d4 100644 --- a/src/social/api/views.py +++ b/src/social/api/views.py @@ -212,6 +212,19 @@ class ListItemListViewV3(ListCreateAPIView): serializer.save(list=lst) +@never_cache +class ListItemsForBook(ListAPIView): + permission_classes = [IsAuthenticated] + serializer_class = serializers.UserListItemReadSerializer + + def get_queryset(self): + book = get_object_or_404(catalogue.models.Book, slug=self.kwargs['book']) + return models.UserListItem.objects.filter( + list__user=self.request.user, + book=book, + ) + + class ListItemsView(APIView): permission_classes = [IsAuthenticated] -- 2.20.1