mirror of
https://github.com/quantum5/peeringdb-mirror.git
synced 2025-04-24 10:11:58 -04:00
Add PeeringDBDetailView
This commit is contained in:
parent
971aa1d479
commit
c5f413b109
|
@ -1,8 +1,9 @@
|
|||
from django.db.models import IntegerField, QuerySet
|
||||
from django.http import JsonResponse
|
||||
from django.views.generic.detail import BaseDetailView
|
||||
from django.views.generic.list import BaseListView
|
||||
|
||||
from peeringdb_api.serializer import serialize_many
|
||||
from peeringdb_api.serializer import serialize, serialize_many
|
||||
|
||||
|
||||
def format_for_field(field, value):
|
||||
|
@ -30,3 +31,9 @@ class PeeringDBListView(BaseListView):
|
|||
queryset = queryset.filter(**{k: value})
|
||||
|
||||
return JsonResponse({'data': serialize_many(queryset)})
|
||||
|
||||
|
||||
class PeeringDBDetailView(BaseDetailView):
|
||||
def get(self, request, *args, **kwargs):
|
||||
obj = self.get_object()
|
||||
return JsonResponse({'data': [serialize(obj)]})
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from django.urls import path
|
||||
from django_peeringdb import models
|
||||
|
||||
from peeringdb_api.views import PeeringDBListView
|
||||
from peeringdb_api.views import PeeringDBDetailView, PeeringDBListView
|
||||
|
||||
urlpatterns = [
|
||||
path('api/org', PeeringDBListView.as_view(model=models.Organization)),
|
||||
|
@ -17,4 +17,18 @@ urlpatterns = [
|
|||
path('api/netfac', PeeringDBListView.as_view(model=models.NetworkFacility)),
|
||||
path('api/netixlan', PeeringDBListView.as_view(model=models.NetworkIXLan)),
|
||||
path('api/poc', PeeringDBListView.as_view(model=models.NetworkContact)),
|
||||
|
||||
path('api/org/<int:pk>', PeeringDBDetailView.as_view(model=models.Organization)),
|
||||
path('api/fac/<int:pk>', PeeringDBDetailView.as_view(model=models.Facility)),
|
||||
path('api/net/<int:pk>', PeeringDBDetailView.as_view(model=models.Network)),
|
||||
path('api/ix/<int:pk>', PeeringDBDetailView.as_view(model=models.InternetExchange)),
|
||||
path('api/campus/<int:pk>', PeeringDBDetailView.as_view(model=models.Campus)),
|
||||
path('api/carrier/<int:pk>', PeeringDBDetailView.as_view(model=models.Carrier)),
|
||||
path('api/carrierfac/<int:pk>', PeeringDBDetailView.as_view(model=models.CarrierFacility)),
|
||||
path('api/ixfac/<int:pk>', PeeringDBDetailView.as_view(model=models.InternetExchangeFacility)),
|
||||
path('api/ixlan/<int:pk>', PeeringDBDetailView.as_view(model=models.IXLan)),
|
||||
path('api/ixpfx/<int:pk>', PeeringDBDetailView.as_view(model=models.IXLanPrefix)),
|
||||
path('api/netfac/<int:pk>', PeeringDBDetailView.as_view(model=models.NetworkFacility)),
|
||||
path('api/netixlan/<int:pk>', PeeringDBDetailView.as_view(model=models.NetworkIXLan)),
|
||||
path('api/poc/<int:pk>', PeeringDBDetailView.as_view(model=models.NetworkContact)),
|
||||
]
|
||||
|
|
Loading…
Reference in a new issue