src/restapi/views.py
author Harris Baptiste <harris.baptiste@iri.centrepompidou.fr>
Tue, 31 May 2016 17:46:32 +0200
changeset 6 37baf9d13f32
permissions -rw-r--r--
first commit

from django.shortcuts import render, HttpResponse
from pprint import pprint

from django.views.decorators.csrf import csrf_exempt
from rest_framework.renderers import JSONRenderer
from rest_framework.parsers import JSONParser
from iconolab.models import Annotation
from .serializers import AnnotationSerializer

class JSONResponse(HttpResponse):
	def __init__(self, data, **kwargs):
		content = JSONRenderer().render(data)
		kwargs['content_type'] = 'application/json'
		super(JSONResponse, self).__init__(content)


# Create your views here.

def index(r):
	return HttpResponse('<p>You better know ... </p>')

@csrf_exempt
def annotation_list(request):
	
	if request.method == 'GET':
		annotations = Annotation.objects.all()
		serializer = AnnotationSerializer(annotations, many=True)
		return JSONResponse(serializer.data)



def get(request, pk):
	if request.method == 'GET':
		
		try:
			annotation = Annotation.objects.get(pk=pk)
		except Annotation.DoesNotExist:
			return HttpResponse(status=404)

		serializer = AnnotationSerializer(annotation) 
		return JSONResponse(serializer.data)