From 17a5c932379f5f1e38c382d0968a4c8edd07634a Mon Sep 17 00:00:00 2001 From: AndiMajore <andi.majore@googlemail.com> Date: Tue, 26 Jul 2022 12:03:38 +0200 Subject: [PATCH] added get_datasets route --- drugstone/serializers.py | 11 +++++++++++ drugstone/urls.py | 8 +++----- drugstone/views.py | 10 +++++++++- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/drugstone/serializers.py b/drugstone/serializers.py index 1e92af8..7fca111 100755 --- a/drugstone/serializers.py +++ b/drugstone/serializers.py @@ -17,6 +17,17 @@ class PPIDatasetSerializer(serializers.ModelSerializer): model = models.PPIDataset fields = '__all__' +class PDisDatasetSerializer(serializers.ModelSerializer): + class Meta: + model = models.PDisDataset + fields = '__all__' + + +class DrDisDatasetSerializer(serializers.ModelSerializer): + class Meta: + model = models.DrDiDataset + fields = '__all__' + class ProteinNodeSerializer(serializers.ModelSerializer): drugstone_id = serializers.SerializerMethodField() uniprot_ac = serializers.SerializerMethodField() diff --git a/drugstone/urls.py b/drugstone/urls.py index 74605cf..a2e5786 100755 --- a/drugstone/urls.py +++ b/drugstone/urls.py @@ -17,23 +17,21 @@ from django.contrib import admin from django.urls import path from drugstone.views import map_nodes, tasks_view, result_view, \ - graph_export, query_proteins, TissueView, TissueExpressionView, query_tissue_proteins, TaskView, \ - adjacent_drugs, adjacent_disorders, fetch_edges, create_network, load_network, get_license + graph_export, TissueView, TissueExpressionView, query_tissue_proteins, TaskView, \ + adjacent_drugs, adjacent_disorders, fetch_edges, create_network, load_network, get_license, get_datasets # cache time is 6 hours urlpatterns = [ - # path('network/', cache_page(21600)(ProteinViralInteractionView.as_view())), + path('get_datasets/', get_datasets), path('map_nodes/', map_nodes), path('fetch_edges/', fetch_edges), path('task/', TaskView.as_view()), path('tasks/', tasks_view), path('task_result/', result_view), path('graph_export/', graph_export), - # path('query_proteins/', query_proteins), path('query_tissue_proteins/', query_tissue_proteins), path('adjacent_drugs/', adjacent_drugs), path('adjacent_disorders/', adjacent_disorders), - # path('drug_interactions/', ProteinDrugInteractionView.as_view()), path('tissue_expression/', TissueExpressionView.as_view()), path('tissues/', TissueView.as_view()), path('admin/', admin.site.urls), diff --git a/drugstone/views.py b/drugstone/views.py index d7a03fa..9a88139 100755 --- a/drugstone/views.py +++ b/drugstone/views.py @@ -231,6 +231,15 @@ def create_network(request) -> Response: return Response(id) +@api_view(['GET']) +def get_datasets(request)->Response: + datasets = {} + datasets['protein-protein'] = PPIDatasetSerializer(many=True).to_representation(PPIDataset.objects.all()) + datasets['protein-drug'] = PDIDatasetSerializer(many=True).to_representation(PDIDataset.objects.all()) + datasets['protein-disorder'] = PDisDatasetSerializer(many=True).to_representation(PDisDataset.objects.all()) + datasets['drug-disorder'] = DrDisDatasetSerializer(many=True).to_representation(DrDiDataset.objects.all()) + return Response(datasets) + @api_view(['GET']) def load_network(request) -> Response: network = NetworkSerializer().to_representation(Network.objects.get(id=request.query_params.get('id'))) @@ -620,7 +629,6 @@ class TissueView(APIView): tissues = Tissue.objects.all() return Response(TissueSerializer(many=True).to_representation(tissues)) - class TissueExpressionView(APIView): """ Expression of host proteins in tissues. -- GitLab