From 887d2074dcdf3a36ea68d0f4d5299aaf200a5e25 Mon Sep 17 00:00:00 2001 From: "Edgar P. Burkhart" Date: Fri, 14 Apr 2023 15:33:43 +0200 Subject: [PATCH] All transactions endpoint --- nummi/api/__init__.py | 0 nummi/api/admin.py | 3 +++ nummi/api/apps.py | 6 ++++++ nummi/api/migrations/__init__.py | 0 nummi/api/models.py | 3 +++ nummi/api/tests.py | 3 +++ nummi/api/urls.py | 7 +++++++ nummi/api/views.py | 13 +++++++++++++ nummi/nummi/urls.py | 1 + 9 files changed, 36 insertions(+) create mode 100644 nummi/api/__init__.py create mode 100644 nummi/api/admin.py create mode 100644 nummi/api/apps.py create mode 100644 nummi/api/migrations/__init__.py create mode 100644 nummi/api/models.py create mode 100644 nummi/api/tests.py create mode 100644 nummi/api/urls.py create mode 100644 nummi/api/views.py diff --git a/nummi/api/__init__.py b/nummi/api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/nummi/api/admin.py b/nummi/api/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/nummi/api/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/nummi/api/apps.py b/nummi/api/apps.py new file mode 100644 index 0000000..878e7d5 --- /dev/null +++ b/nummi/api/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ApiConfig(AppConfig): + default_auto_field = "django.db.models.BigAutoField" + name = "api" diff --git a/nummi/api/migrations/__init__.py b/nummi/api/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/nummi/api/models.py b/nummi/api/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/nummi/api/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/nummi/api/tests.py b/nummi/api/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/nummi/api/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/nummi/api/urls.py b/nummi/api/urls.py new file mode 100644 index 0000000..858013a --- /dev/null +++ b/nummi/api/urls.py @@ -0,0 +1,7 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path("transactions", views.TransactionListView.as_view(), name="index"), +] diff --git a/nummi/api/views.py b/nummi/api/views.py new file mode 100644 index 0000000..ca7e5ad --- /dev/null +++ b/nummi/api/views.py @@ -0,0 +1,13 @@ +from django.http import JsonResponse +from django.views import View +from django.views.generic.list import MultipleObjectMixin + +from main.models import Transaction +from main.views import UserMixin + + +class TransactionListView(UserMixin, MultipleObjectMixin, View): + model = Transaction + + def get(self, request, *args, **kwargs): + return JsonResponse({"transactions": list(self.get_queryset().values())}) diff --git a/nummi/nummi/urls.py b/nummi/nummi/urls.py index 14d3517..a888c80 100644 --- a/nummi/nummi/urls.py +++ b/nummi/nummi/urls.py @@ -20,6 +20,7 @@ from django.urls import include, path urlpatterns = i18n_patterns( path("", include("main.urls")), path("plot/", include("plot.urls")), + path("api/", include("api.urls")), path("admin/", admin.site.urls), prefix_default_language=False, )