diff --git a/backend/kernelCI/urls.py b/backend/kernelCI/urls.py index 42ec78e..0a586bd 100644 --- a/backend/kernelCI/urls.py +++ b/backend/kernelCI/urls.py @@ -16,8 +16,9 @@ """ from django.contrib import admin -from django.urls import path +from django.urls import path, include urlpatterns = [ path("admin/", admin.site.urls), + path('api/', include('kernelCI_app.urls')), ] diff --git a/backend/kernelCI_app/urls.py b/backend/kernelCI_app/urls.py new file mode 100644 index 0000000..7084c79 --- /dev/null +++ b/backend/kernelCI_app/urls.py @@ -0,0 +1,7 @@ +from django.urls import path +from kernelCI_app import views + + +urlpatterns = [ + path('tree/', views.TreeView.as_view(), name='tree') +] diff --git a/backend/kernelCI_app/views.py b/backend/kernelCI_app/views.py index fd0e044..a776435 100644 --- a/backend/kernelCI_app/views.py +++ b/backend/kernelCI_app/views.py @@ -1,3 +1,16 @@ -# from django.shortcuts import render +from django.http import JsonResponse +from django.views import View -# Create your views here. +from kernelCI_app.models import Checkouts +from kernelCI_app.serializers import TreeSerializer +from kernelCI_app.utils import get_visible_record_ids + + +class TreeView(View): + + def get(self, _): + checkout_ids = get_visible_record_ids('checkouts') + checkouts = Checkouts.objects.filter(id__in=checkout_ids) + serializer = TreeSerializer(checkouts, many=True) + + return JsonResponse(serializer.data, safe=False)