adding possibility to update the informations of a book (title, etc.) and handle 'idBook' parameters in Slide urls to send back only the slides of a book (will replace BooksSlides)
authorrougeronj
Fri, 22 May 2015 17:42:57 +0200
changeset 94 cb4cf30a1629
parent 93 4b167851ee7d
child 95 46ce67c44723
adding possibility to update the informations of a book (title, etc.) and handle 'idBook' parameters in Slide urls to send back only the slides of a book (will replace BooksSlides)
server/ammico/views.py
--- a/server/ammico/views.py	Fri May 22 17:41:19 2015 +0200
+++ b/server/ammico/views.py	Fri May 22 17:42:57 2015 +0200
@@ -137,6 +137,20 @@
         serializer = BookSerializer(book)
         return Response(serializer.data)
     
+    def post(self, request, idBook):
+        """
+        update a Book
+        """
+        try:
+            book = Book.objects.get(user = request.user.id, id=idBook)
+        except Book.DoesNotExist:
+            return HttpResponse(status=404)
+        serializer = BookSerializer(book, data=request.data)
+        if serializer.is_valid():
+            serializer.save()
+            return Response(serializer.data, status=status.HTTP_201_CREATED)
+        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
+    
     def delete(self, request, idBook):
         """
         delete a book
@@ -205,8 +219,12 @@
     def get(self, request):
         """
         Return a list of slide
-        """               
-        slides = Slide.objects.filter(book__user = request.user.id)
+        """
+        if 'idBook' in request.GET:
+            slides = Slide.objects.filter(book__user = request.user.id, book = request.GET['idBook'])
+        else:
+            slides = Slide.objects.filter(book__user = request.user.id)
+       ## if idBook in request
         serializer = SlideSerializer(slides, many=True)
         return Response(serializer.data)