mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-23 04:22:01 -06:00
Provided a root API view
This commit is contained in:
parent
94a29be415
commit
7e51ca9912
@ -2,7 +2,7 @@ from django.conf import settings
|
|||||||
from django.conf.urls import include, url
|
from django.conf.urls import include, url
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
|
|
||||||
from netbox.views import home, handle_500, trigger_500
|
from netbox.views import APIRootView, home, handle_500, trigger_500
|
||||||
from users.views import login, logout
|
from users.views import login, logout
|
||||||
|
|
||||||
|
|
||||||
@ -26,6 +26,7 @@ _patterns = [
|
|||||||
url(r'^profile/', include('users.urls', namespace='users')),
|
url(r'^profile/', include('users.urls', namespace='users')),
|
||||||
|
|
||||||
# API
|
# API
|
||||||
|
url(r'^api/$', APIRootView.as_view()),
|
||||||
url(r'^api/circuits/', include('circuits.api.urls', namespace='circuits-api')),
|
url(r'^api/circuits/', include('circuits.api.urls', namespace='circuits-api')),
|
||||||
url(r'^api/dcim/', include('dcim.api.urls', namespace='dcim-api')),
|
url(r'^api/dcim/', include('dcim.api.urls', namespace='dcim-api')),
|
||||||
url(r'^api/extras/', include('extras.api.urls', namespace='extras-api')),
|
url(r'^api/extras/', include('extras.api.urls', namespace='extras-api')),
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
from rest_framework.permissions import IsAuthenticated
|
||||||
|
from rest_framework.views import APIView
|
||||||
|
from rest_framework.response import Response
|
||||||
|
from rest_framework.reverse import reverse
|
||||||
|
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
|
|
||||||
from circuits.models import Provider, Circuit
|
from circuits.models import Provider, Circuit
|
||||||
@ -47,6 +52,24 @@ def home(request):
|
|||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
class APIRootView(APIView):
|
||||||
|
permission_classes = [IsAuthenticated]
|
||||||
|
|
||||||
|
def get_view_name(self):
|
||||||
|
return u"API Root"
|
||||||
|
|
||||||
|
def get(self, request, format=None):
|
||||||
|
|
||||||
|
return Response({
|
||||||
|
'circuits': reverse('circuits-api:api-root', request=request, format=format),
|
||||||
|
'dcim': reverse('dcim-api:api-root', request=request, format=format),
|
||||||
|
'extras': reverse('extras-api:api-root', request=request, format=format),
|
||||||
|
'ipam': reverse('ipam-api:api-root', request=request, format=format),
|
||||||
|
'secrets': reverse('secrets-api:api-root', request=request, format=format),
|
||||||
|
'tenancy': reverse('tenancy-api:api-root', request=request, format=format),
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
def handle_500(request):
|
def handle_500(request):
|
||||||
"""
|
"""
|
||||||
Custom server error handler
|
Custom server error handler
|
||||||
|
Loading…
Reference in New Issue
Block a user