def post(self, request):
     serialized = AutorSerializer(data=request.data)
     if serialized.is_valid():
         serialized.save()
         return Response(
             status=status.HTTP_201_CREATED,
             data=serialized.data
         )
     else:
         return Response(status=status.HTTP_400_BAD_REQUEST)
Esempio n. 2
0
class LibroSerializer(serializers.ModelSerializer):
    autores = AutorSerializer(many=True, read_only=True)
    editorial = EditorialSerializer(read_only=True)

    class Meta:
        model = Libro
        fields = ('titulo', 'autores', 'editorial', 'id')
 def get(self, request):
     autores = Autor.objects.all()
     serialized = AutorSerializer(autores, many=True)
     return Response(
         status=status.HTTP_200_OK,
         data=serialized.data
     )
Esempio n. 4
0
 def autores(self, request, pk=None):
     libro = self.get_object()
     autores = Autor.objects.filter(libro__id=libro.id)
     serialized = AutorSerializer(autores, many=True)
     if not autores:
         return Response(status=status.HTTP_404_NOT_FOUND,
                         data={'message': 'Este libro no tiene autor'})
     return Response(status=status.HTTP_200_OK, data=serialized.data)
    def patch(self, request, id):
        try:
            autor = Autor.objects.get(id=id)
        except Autor.DoesNotExist:
            return Response(status=status.HTTP_400_BAD_REQUEST)

        serialized = AutorSerializer(
            autor,
            data=request.data,
            partial=True
        )

        if serialized.is_valid():
            serialized.save()
            return Response(
                status=status.HTTP_200_OK,
                data=serialized.data
            )
Esempio n. 6
0
class LibroSerializer(serializers.ModelSerializer):
    """
    General purpose Libro serializer
    """
    autores = AutorSerializer(many=True, read_only=True)
    editorial = EditorialSerializer(read_only=True)

    class Meta:
        model = Libro
        fields = ('titulo', 'autores', 'editorial', 'fecha_publicacion')
Esempio n. 7
0
 def autores(self, request, pk=None):
     """
     Regresa los autores de un libro.
     """
     # /libros/1/autores
     libro = self.get_object()  # => Libro.objects.get(id=1)
     autores = libro.autores.all()
     # autores = Autor.objects.filter(libro__id=libro.id)
     serialized = AutorSerializer(autores, many=True)
     return Response(status=status.HTTP_200_OK, data=serialized.data)
    def get(self, request, id):
        try:
            autor = Autor.objects.get(id=id)

        except Autor.DoesNotExist:
            return Response(status=status.HTTP_400_BAD_REQUEST)

        serialized = AutorSerializer(autor)
        return Response(
            status=status.HTTP_200_OK,
            data=serialized.data
        )
Esempio n. 9
0
 def autores(self,request,pk=None):
     libro= self.get_object()
     serialized=AutorSerializer(libro.autores, many=True)
     return Response(status=status.HTTP_200_OK,data=serialized.data)