urls.py 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. from __future__ import unicode_literals
  2. from rest_framework import routers
  3. from . import views
  4. class DCIMRootView(routers.APIRootView):
  5. """
  6. DCIM API root view
  7. """
  8. def get_view_name(self):
  9. return 'DCIM'
  10. router = routers.DefaultRouter()
  11. router.APIRootView = DCIMRootView
  12. # Field choices
  13. router.register(r'_choices', views.DCIMFieldChoicesViewSet, base_name='field-choice')
  14. # Sites
  15. router.register(r'regions', views.RegionViewSet)
  16. router.register(r'sites', views.SiteViewSet)
  17. # Racks
  18. router.register(r'rack-groups', views.RackGroupViewSet)
  19. router.register(r'rack-roles', views.RackRoleViewSet)
  20. router.register(r'racks', views.RackViewSet)
  21. router.register(r'rack-reservations', views.RackReservationViewSet)
  22. # Device types
  23. router.register(r'manufacturers', views.ManufacturerViewSet)
  24. router.register(r'device-types', views.DeviceTypeViewSet)
  25. # Device type components
  26. router.register(r'console-port-templates', views.ConsolePortTemplateViewSet)
  27. router.register(r'console-server-port-templates', views.ConsoleServerPortTemplateViewSet)
  28. router.register(r'power-port-templates', views.PowerPortTemplateViewSet)
  29. router.register(r'power-outlet-templates', views.PowerOutletTemplateViewSet)
  30. router.register(r'interface-templates', views.InterfaceTemplateViewSet)
  31. router.register(r'device-bay-templates', views.DeviceBayTemplateViewSet)
  32. # Devices
  33. router.register(r'device-roles', views.DeviceRoleViewSet)
  34. router.register(r'platforms', views.PlatformViewSet)
  35. router.register(r'devices', views.DeviceViewSet)
  36. # Device components
  37. router.register(r'console-ports', views.ConsolePortViewSet)
  38. router.register(r'console-server-ports', views.ConsoleServerPortViewSet)
  39. router.register(r'power-ports', views.PowerPortViewSet)
  40. router.register(r'power-outlets', views.PowerOutletViewSet)
  41. router.register(r'interfaces', views.InterfaceViewSet)
  42. router.register(r'device-bays', views.DeviceBayViewSet)
  43. router.register(r'inventory-items', views.InventoryItemViewSet)
  44. # Connections
  45. router.register(r'console-connections', views.ConsoleConnectionViewSet, base_name='consoleconnections')
  46. router.register(r'power-connections', views.PowerConnectionViewSet, base_name='powerconnections')
  47. router.register(r'interface-connections', views.InterfaceConnectionViewSet)
  48. # Virtual chassis
  49. router.register(r'virtual-chassis', views.VirtualChassisViewSet)
  50. router.register(r'vc-memberships', views.VCMembershipViewSet)
  51. # Miscellaneous
  52. router.register(r'connected-device', views.ConnectedDeviceViewSet, base_name='connected-device')
  53. app_name = 'dcim-api'
  54. urlpatterns = router.urls