get slides of a book
authorrougeronj
Fri, 20 Mar 2015 11:31:44 +0100
changeset 19 22b9a23dd525
parent 18 4d3f67ddbe72
child 20 a84fce1b1a98
get slides of a book
server/ammico/urls.py
server/ammico/views.py
--- a/server/ammico/urls.py	Wed Mar 18 16:21:58 2015 +0100
+++ b/server/ammico/urls.py	Fri Mar 20 11:31:44 2015 +0100
@@ -1,10 +1,11 @@
 from django.conf.urls import patterns, url
-from .views import populateUser, ListBooks, InfoBook, ListSlides, InfoSlide
+from .views import populateUser, ListBooks, InfoBook, ListSlides, InfoSlide, GetSlides
 
 urlpatterns = patterns('',
     url(r'^populateUser/$', populateUser, name='populateUser'),
     url(r'^books/$', ListBooks.as_view()),
     url(r'^books/(?P<idBook>[0-9]+)$', InfoBook.as_view()),
+    url(r'^books/(?P<idBook>[0-9]+)/slides$', GetSlides.as_view()),
     url(r'^slides/$', ListSlides.as_view()),
     url(r'^slides/(?P<idSlide>[0-9]+)$', InfoSlide.as_view()),
 )
--- a/server/ammico/views.py	Wed Mar 18 16:21:58 2015 +0100
+++ b/server/ammico/views.py	Fri Mar 20 11:31:44 2015 +0100
@@ -88,6 +88,24 @@
         
         serializer = BookSerializer(book)
         return Response(serializer.data)
+    
+class GetSlides(APIView):
+    """
+    View to get book informations.
+    """
+    #authentication_classes = (authentication.TokenAuthentication,)
+    #permission_classes = (permissions.IsAdminUser,)
+    permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
+
+    def get(self, request, idBook):
+        try:
+            book = Book.objects.get(id=idBook)
+        except Book.DoesNotExist:
+            return HttpResponse(status=404)
+        print(book)
+        
+        serializer = SlideSerializer(book.slides.all(), many=True)
+        return Response(serializer.data)
 
 class ListSlides(APIView):
     """
@@ -99,9 +117,9 @@
 
     def get(self, request, format=None):
         """
-        Return a list of all Books.
-        """
-        slides = Slide.objects.all()
+        Return a list of slide
+        """               
+        slides = Slide.objects.filter()
         serializer = SlideSerializer(slides, many=True)
         return Response(serializer.data)