-@csrf_exempt
-def species_json(request, species_id):
- """
- Return information about a species.
- """
- raise Http404
-
-
-def species(request, species_id):
- species = get_object_or_404(Species, id=species_id)
-
- context = RequestContext(request,
- {'species': species})
-
- return render_to_response("samples/species_detail.html", context)
+class LibraryViewSet(viewsets.ReadOnlyModelViewSet):
+ renderer_classes = (TemplateHTMLRenderer,
+ BrowsableAPIRenderer,
+ JSONRenderer)
+ queryset = Library.objects.all()
+ serializer_class = LibrarySerializer
+ pagination_class = 'rest_framework.pagination.LimitOffsetPagination'
+ default_limit = 50
+ template_name = 'samples/library_detail.html'
+
+
+class ExperimentTypeViewSet(viewsets.ReadOnlyModelViewSet):
+ renderer_classes = (BrowsableAPIRenderer,
+ JSONRenderer)
+ queryset = ExperimentType.objects.all()
+ serializer_class = ExperimentTypeSerializer
+
+#@csrf_exempt
+#def species_json(request, species_id):
+# """
+# Return information about a species.
+# """
+# raise Http404
+#
+#
+#def species(request, species_id):
+# species = get_object_or_404(Species, id=species_id)
+#
+# context = RequestContext(request,
+# {'species': species})
+#
+# return render_to_response("samples/species_detail.html", context)
+#
+
+class SpeciesViewSet(viewsets.ReadOnlyModelViewSet):
+ renderer_classes = (TemplateHTMLRenderer,
+ BrowsableAPIRenderer,
+ JSONRenderer)
+ queryset = Species.objects.all()
+ serializer_class = SpeciesSerializer
+ template_name = 'samples/species_detail.html'
+
+ def list(self, request, format=format):
+ queryset = Species.objects.all()
+ serializer = self.serializer_class(
+ queryset,
+ many=True,
+ context={'request': request})
+ return Response({'species': serializer.data},
+ template_name='samples/species_list.html')