From 6bb713e68be8fa355957aeacdce25880d99dce82 Mon Sep 17 00:00:00 2001
From: Kenzo-Hugo Hillion <kenzo-hugo.hillion1@pasteur.fr>
Date: Mon, 26 Aug 2019 17:57:05 +0200
Subject: [PATCH] add taxonomy and functions API

---
 backend/metagenedb/api/catalog/urls.py           |  4 +++-
 backend/metagenedb/api/catalog/views/__init__.py |  2 ++
 backend/metagenedb/api/catalog/views/function.py | 10 ++++++++++
 backend/metagenedb/api/catalog/views/taxonomy.py | 10 ++++++++++
 4 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 backend/metagenedb/api/catalog/views/function.py
 create mode 100644 backend/metagenedb/api/catalog/views/taxonomy.py

diff --git a/backend/metagenedb/api/catalog/urls.py b/backend/metagenedb/api/catalog/urls.py
index bf224cd..da5e3c9 100644
--- a/backend/metagenedb/api/catalog/urls.py
+++ b/backend/metagenedb/api/catalog/urls.py
@@ -1,11 +1,13 @@
 from django.conf.urls import url, include
 from rest_framework.routers import DefaultRouter
 
-from metagenedb.api.catalog.views import GeneViewSet
+from metagenedb.api.catalog.views import FunctionViewSet, GeneViewSet, TaxonomyViewSet
 
 
 api_router = DefaultRouter()
+api_router.register(r'functions', FunctionViewSet, base_name='functions')
 api_router.register(r'genes', GeneViewSet, base_name='genes')
+api_router.register(r'taxonomy', TaxonomyViewSet, base_name='taxonomy')
 
 
 urlpatterns = [
diff --git a/backend/metagenedb/api/catalog/views/__init__.py b/backend/metagenedb/api/catalog/views/__init__.py
index 627996c..bb3631d 100644
--- a/backend/metagenedb/api/catalog/views/__init__.py
+++ b/backend/metagenedb/api/catalog/views/__init__.py
@@ -1 +1,3 @@
+from .function import FunctionViewSet  # noqa
 from .gene import GeneViewSet  # noqa
+from .taxonomy import TaxonomyViewSet  # noqa
diff --git a/backend/metagenedb/api/catalog/views/function.py b/backend/metagenedb/api/catalog/views/function.py
new file mode 100644
index 0000000..f69e92c
--- /dev/null
+++ b/backend/metagenedb/api/catalog/views/function.py
@@ -0,0 +1,10 @@
+from rest_framework.viewsets import ModelViewSet
+
+from metagenedb.apps.catalog.models import Function
+from metagenedb.apps.catalog.serializers import FunctionSerializer
+
+
+class FunctionViewSet(ModelViewSet):
+    queryset = Function.objects.all()
+    serializer_class = FunctionSerializer
+    lookup_field = 'function_id'
diff --git a/backend/metagenedb/api/catalog/views/taxonomy.py b/backend/metagenedb/api/catalog/views/taxonomy.py
new file mode 100644
index 0000000..6c83f5d
--- /dev/null
+++ b/backend/metagenedb/api/catalog/views/taxonomy.py
@@ -0,0 +1,10 @@
+from rest_framework.viewsets import ModelViewSet
+
+from metagenedb.apps.catalog.models import Taxonomy
+from metagenedb.apps.catalog.serializers import TaxonomySerializer
+
+
+class TaxonomyViewSet(ModelViewSet):
+    queryset = Taxonomy.objects.all()
+    serializer_class = TaxonomySerializer
+    lookup_field = 'tax_id'
-- 
GitLab