mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Closes #2200: Replaced detail_route API view decorator with action (DRF change)
This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from rest_framework.decorators import detail_route
|
from rest_framework.decorators import action
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
from circuits import filters
|
from circuits import filters
|
||||||
@ -32,7 +32,7 @@ class ProviderViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.ProviderSerializer
|
serializer_class = serializers.ProviderSerializer
|
||||||
filter_class = filters.ProviderFilter
|
filter_class = filters.ProviderFilter
|
||||||
|
|
||||||
@detail_route()
|
@action(detail=True)
|
||||||
def graphs(self, request, pk=None):
|
def graphs(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
A convenience method for rendering graphs for a particular provider.
|
A convenience method for rendering graphs for a particular provider.
|
||||||
|
@ -8,7 +8,7 @@ from django.shortcuts import get_object_or_404
|
|||||||
from drf_yasg import openapi
|
from drf_yasg import openapi
|
||||||
from drf_yasg.openapi import Parameter
|
from drf_yasg.openapi import Parameter
|
||||||
from drf_yasg.utils import swagger_auto_schema
|
from drf_yasg.utils import swagger_auto_schema
|
||||||
from rest_framework.decorators import detail_route
|
from rest_framework.decorators import action
|
||||||
from rest_framework.mixins import ListModelMixin
|
from rest_framework.mixins import ListModelMixin
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.viewsets import GenericViewSet, ViewSet
|
from rest_framework.viewsets import GenericViewSet, ViewSet
|
||||||
@ -63,7 +63,7 @@ class SiteViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.SiteSerializer
|
serializer_class = serializers.SiteSerializer
|
||||||
filter_class = filters.SiteFilter
|
filter_class = filters.SiteFilter
|
||||||
|
|
||||||
@detail_route()
|
@action(detail=True)
|
||||||
def graphs(self, request, pk=None):
|
def graphs(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
A convenience method for rendering graphs for a particular site.
|
A convenience method for rendering graphs for a particular site.
|
||||||
@ -103,7 +103,7 @@ class RackViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.RackSerializer
|
serializer_class = serializers.RackSerializer
|
||||||
filter_class = filters.RackFilter
|
filter_class = filters.RackFilter
|
||||||
|
|
||||||
@detail_route()
|
@action(detail=True)
|
||||||
def units(self, request, pk=None):
|
def units(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
List rack units (by rack)
|
List rack units (by rack)
|
||||||
@ -232,12 +232,12 @@ class DeviceViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.DeviceSerializer
|
serializer_class = serializers.DeviceSerializer
|
||||||
filter_class = filters.DeviceFilter
|
filter_class = filters.DeviceFilter
|
||||||
|
|
||||||
@detail_route(url_path='config-context')
|
@action(detail=True, url_path='config-context')
|
||||||
def config_context(self, request, pk):
|
def config_context(self, request, pk):
|
||||||
device = get_object_or_404(Device, pk=pk)
|
device = get_object_or_404(Device, pk=pk)
|
||||||
return Response(device.get_config_context())
|
return Response(device.get_config_context())
|
||||||
|
|
||||||
@detail_route(url_path='napalm')
|
@action(detail=True, url_path='napalm')
|
||||||
def napalm(self, request, pk):
|
def napalm(self, request, pk):
|
||||||
"""
|
"""
|
||||||
Execute a NAPALM method on a Device
|
Execute a NAPALM method on a Device
|
||||||
@ -337,7 +337,7 @@ class InterfaceViewSet(ModelViewSet):
|
|||||||
serializer_class = serializers.InterfaceSerializer
|
serializer_class = serializers.InterfaceSerializer
|
||||||
filter_class = filters.InterfaceFilter
|
filter_class = filters.InterfaceFilter
|
||||||
|
|
||||||
@detail_route()
|
@action(detail=True)
|
||||||
def graphs(self, request, pk=None):
|
def graphs(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
A convenience method for rendering graphs for a particular interface.
|
A convenience method for rendering graphs for a particular interface.
|
||||||
|
@ -4,7 +4,7 @@ from django.contrib.contenttypes.models import ContentType
|
|||||||
from django.db.models import Count
|
from django.db.models import Count
|
||||||
from django.http import Http404, HttpResponse
|
from django.http import Http404, HttpResponse
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from rest_framework.decorators import detail_route
|
from rest_framework.decorators import action
|
||||||
from rest_framework.exceptions import PermissionDenied
|
from rest_framework.exceptions import PermissionDenied
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.viewsets import ReadOnlyModelViewSet, ViewSet
|
from rest_framework.viewsets import ReadOnlyModelViewSet, ViewSet
|
||||||
@ -94,7 +94,7 @@ class TopologyMapViewSet(ModelViewSet):
|
|||||||
serializer_class = serializers.TopologyMapSerializer
|
serializer_class = serializers.TopologyMapSerializer
|
||||||
filter_class = filters.TopologyMapFilter
|
filter_class = filters.TopologyMapFilter
|
||||||
|
|
||||||
@detail_route()
|
@action(detail=True)
|
||||||
def render(self, request, pk):
|
def render(self, request, pk):
|
||||||
|
|
||||||
tmap = get_object_or_404(TopologyMap, pk=pk)
|
tmap = get_object_or_404(TopologyMap, pk=pk)
|
||||||
@ -199,7 +199,7 @@ class ReportViewSet(ViewSet):
|
|||||||
|
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
@detail_route(methods=['post'])
|
@action(detail=True, methods=['post'])
|
||||||
def run(self, request, pk):
|
def run(self, request, pk):
|
||||||
"""
|
"""
|
||||||
Run a Report and create a new ReportResult, overwriting any previous result for the Report.
|
Run a Report and create a new ReportResult, overwriting any previous result for the Report.
|
||||||
|
@ -3,7 +3,7 @@ from __future__ import unicode_literals
|
|||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from rest_framework import status
|
from rest_framework import status
|
||||||
from rest_framework.decorators import detail_route
|
from rest_framework.decorators import action
|
||||||
from rest_framework.exceptions import PermissionDenied
|
from rest_framework.exceptions import PermissionDenied
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
@ -77,7 +77,7 @@ class PrefixViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.PrefixSerializer
|
serializer_class = serializers.PrefixSerializer
|
||||||
filter_class = filters.PrefixFilter
|
filter_class = filters.PrefixFilter
|
||||||
|
|
||||||
@detail_route(url_path='available-prefixes', methods=['get', 'post'])
|
@action(detail=True, url_path='available-prefixes', methods=['get', 'post'])
|
||||||
def available_prefixes(self, request, pk=None):
|
def available_prefixes(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
A convenience method for returning available child prefixes within a parent.
|
A convenience method for returning available child prefixes within a parent.
|
||||||
@ -137,7 +137,7 @@ class PrefixViewSet(CustomFieldModelViewSet):
|
|||||||
|
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
@detail_route(url_path='available-ips', methods=['get', 'post'])
|
@action(detail=True, url_path='available-ips', methods=['get', 'post'])
|
||||||
def available_ips(self, request, pk=None):
|
def available_ips(self, request, pk=None):
|
||||||
"""
|
"""
|
||||||
A convenience method for returning available IP addresses within a prefix. By default, the number of IPs
|
A convenience method for returning available IP addresses within a prefix. By default, the number of IPs
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from rest_framework.decorators import detail_route
|
from rest_framework.decorators import action
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
from dcim.models import Interface
|
from dcim.models import Interface
|
||||||
@ -53,7 +53,7 @@ class VirtualMachineViewSet(CustomFieldModelViewSet):
|
|||||||
serializer_class = serializers.VirtualMachineSerializer
|
serializer_class = serializers.VirtualMachineSerializer
|
||||||
filter_class = filters.VirtualMachineFilter
|
filter_class = filters.VirtualMachineFilter
|
||||||
|
|
||||||
@detail_route(url_path='config-context')
|
@action(detail=True, url_path='config-context')
|
||||||
def config_context(self, request, pk):
|
def config_context(self, request, pk):
|
||||||
device = get_object_or_404(VirtualMachine, pk=pk)
|
device = get_object_or_404(VirtualMachine, pk=pk)
|
||||||
return Response(device.get_config_context())
|
return Response(device.get_config_context())
|
||||||
|
@ -6,7 +6,7 @@ django-mptt>=0.9.0
|
|||||||
django-tables2>=1.19.0
|
django-tables2>=1.19.0
|
||||||
django-taggit>=0.22.2
|
django-taggit>=0.22.2
|
||||||
django-timezone-field>=2.0
|
django-timezone-field>=2.0
|
||||||
djangorestframework>=3.7.7,<3.8.2
|
djangorestframework>=3.8.0,<3.8.2
|
||||||
drf-yasg[validation]>=1.4.4
|
drf-yasg[validation]>=1.4.4
|
||||||
graphviz>=0.8.2
|
graphviz>=0.8.2
|
||||||
Markdown>=2.6.11
|
Markdown>=2.6.11
|
||||||
|
Reference in New Issue
Block a user