Coverage for dcim/urls.py: 100%
5 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 18:35 +0000
1from django.urls import include, path
3from utilities.urls import get_model_urls
5from . import views
7app_name = 'dcim'
8urlpatterns = [
10 path('regions/', include(get_model_urls('dcim', 'region', detail=False))),
11 path('regions/<int:pk>/', include(get_model_urls('dcim', 'region'))),
13 path('site-groups/', include(get_model_urls('dcim', 'sitegroup', detail=False))),
14 path('site-groups/<int:pk>/', include(get_model_urls('dcim', 'sitegroup'))),
16 path('sites/', include(get_model_urls('dcim', 'site', detail=False))),
17 path('sites/<int:pk>/', include(get_model_urls('dcim', 'site'))),
19 path('locations/', include(get_model_urls('dcim', 'location', detail=False))),
20 path('locations/<int:pk>/', include(get_model_urls('dcim', 'location'))),
22 path('rack-groups/', include(get_model_urls('dcim', 'rackgroup', detail=False))),
23 path('rack-groups/<int:pk>/', include(get_model_urls('dcim', 'rackgroup'))),
25 path('rack-roles/', include(get_model_urls('dcim', 'rackrole', detail=False))),
26 path('rack-roles/<int:pk>/', include(get_model_urls('dcim', 'rackrole'))),
28 path('rack-reservations/', include(get_model_urls('dcim', 'rackreservation', detail=False))),
29 path('rack-reservations/<int:pk>/', include(get_model_urls('dcim', 'rackreservation'))),
31 path('racks/', include(get_model_urls('dcim', 'rack', detail=False))),
32 path('racks/<int:pk>/', include(get_model_urls('dcim', 'rack'))),
33 path('rack-elevations/', views.RackElevationListView.as_view(), name='rack_elevation_list'),
35 path('rack-types/', include(get_model_urls('dcim', 'racktype', detail=False))),
36 path('rack-types/<int:pk>/', include(get_model_urls('dcim', 'racktype'))),
38 path('manufacturers/', include(get_model_urls('dcim', 'manufacturer', detail=False))),
39 path('manufacturers/<int:pk>/', include(get_model_urls('dcim', 'manufacturer'))),
41 path('device-types/', include(get_model_urls('dcim', 'devicetype', detail=False))),
42 path('device-types/<int:pk>/', include(get_model_urls('dcim', 'devicetype'))),
44 path('module-bay-types/', include(get_model_urls('dcim', 'modulebaytype', detail=False))),
45 path('module-bay-types/<int:pk>/', include(get_model_urls('dcim', 'modulebaytype'))),
47 path('module-type-profiles/', include(get_model_urls('dcim', 'moduletypeprofile', detail=False))),
48 path('module-type-profiles/<int:pk>/', include(get_model_urls('dcim', 'moduletypeprofile'))),
50 path('module-types/', include(get_model_urls('dcim', 'moduletype', detail=False))),
51 path('module-types/<int:pk>/', include(get_model_urls('dcim', 'moduletype'))),
53 path('console-port-templates/', include(get_model_urls('dcim', 'consoleporttemplate', detail=False))),
54 path('console-port-templates/<int:pk>/', include(get_model_urls('dcim', 'consoleporttemplate'))),
56 path('console-server-port-templates/', include(get_model_urls('dcim', 'consoleserverporttemplate', detail=False))),
57 path('console-server-port-templates/<int:pk>/', include(get_model_urls('dcim', 'consoleserverporttemplate'))),
59 path('power-port-templates/', include(get_model_urls('dcim', 'powerporttemplate', detail=False))),
60 path('power-port-templates/<int:pk>/', include(get_model_urls('dcim', 'powerporttemplate'))),
62 path('power-outlet-templates/', include(get_model_urls('dcim', 'poweroutlettemplate', detail=False))),
63 path('power-outlet-templates/<int:pk>/', include(get_model_urls('dcim', 'poweroutlettemplate'))),
65 path('cooling-intake-templates/', include(get_model_urls('dcim', 'coolingintaketemplate', detail=False))),
66 path('cooling-intake-templates/<int:pk>/', include(get_model_urls('dcim', 'coolingintaketemplate'))),
68 path('cooling-outflow-templates/', include(get_model_urls('dcim', 'coolingoutflowtemplate', detail=False))),
69 path('cooling-outflow-templates/<int:pk>/', include(get_model_urls('dcim', 'coolingoutflowtemplate'))),
71 path('interface-templates/', include(get_model_urls('dcim', 'interfacetemplate', detail=False))),
72 path('interface-templates/<int:pk>/', include(get_model_urls('dcim', 'interfacetemplate'))),
74 path('front-port-templates/', include(get_model_urls('dcim', 'frontporttemplate', detail=False))),
75 path('front-port-templates/<int:pk>/', include(get_model_urls('dcim', 'frontporttemplate'))),
77 path('rear-port-templates/', include(get_model_urls('dcim', 'rearporttemplate', detail=False))),
78 path('rear-port-templates/<int:pk>/', include(get_model_urls('dcim', 'rearporttemplate'))),
80 path('device-bay-templates/', include(get_model_urls('dcim', 'devicebaytemplate', detail=False))),
81 path('device-bay-templates/<int:pk>/', include(get_model_urls('dcim', 'devicebaytemplate'))),
83 path('module-bay-templates/', include(get_model_urls('dcim', 'modulebaytemplate', detail=False))),
84 path('module-bay-templates/<int:pk>/', include(get_model_urls('dcim', 'modulebaytemplate'))),
86 path('inventory-item-templates/', include(get_model_urls('dcim', 'inventoryitemtemplate', detail=False))),
87 path('inventory-item-templates/<int:pk>/', include(get_model_urls('dcim', 'inventoryitemtemplate'))),
89 path('device-roles/', include(get_model_urls('dcim', 'devicerole', detail=False))),
90 path('device-roles/<int:pk>/', include(get_model_urls('dcim', 'devicerole'))),
92 path('platforms/', include(get_model_urls('dcim', 'platform', detail=False))),
93 path('platforms/<int:pk>/', include(get_model_urls('dcim', 'platform'))),
95 path('devices/', include(get_model_urls('dcim', 'device', detail=False))),
96 path('devices/<int:pk>/', include(get_model_urls('dcim', 'device'))),
98 path('virtual-device-contexts/', include(get_model_urls('dcim', 'virtualdevicecontext', detail=False))),
99 path('virtual-device-contexts/<int:pk>/', include(get_model_urls('dcim', 'virtualdevicecontext'))),
101 path('modules/', include(get_model_urls('dcim', 'module', detail=False))),
102 path('modules/<int:pk>/', include(get_model_urls('dcim', 'module'))),
104 path('console-ports/', include(get_model_urls('dcim', 'consoleport', detail=False))),
105 path('console-ports/<int:pk>/', include(get_model_urls('dcim', 'consoleport'))),
106 path(
107 'devices/console-ports/add/',
108 views.DeviceBulkAddConsolePortView.as_view(),
109 name='device_bulk_add_consoleport'
110 ),
112 path('console-server-ports/', include(get_model_urls('dcim', 'consoleserverport', detail=False))),
113 path('console-server-ports/<int:pk>/', include(get_model_urls('dcim', 'consoleserverport'))),
114 path(
115 'devices/console-server-ports/add/',
116 views.DeviceBulkAddConsoleServerPortView.as_view(),
117 name='device_bulk_add_consoleserverport'
118 ),
120 path('power-ports/', include(get_model_urls('dcim', 'powerport', detail=False))),
121 path('power-ports/<int:pk>/', include(get_model_urls('dcim', 'powerport'))),
122 path('devices/power-ports/add/', views.DeviceBulkAddPowerPortView.as_view(), name='device_bulk_add_powerport'),
124 path('power-outlets/', include(get_model_urls('dcim', 'poweroutlet', detail=False))),
125 path('power-outlets/<int:pk>/', include(get_model_urls('dcim', 'poweroutlet'))),
126 path(
127 'devices/power-outlets/add/',
128 views.DeviceBulkAddPowerOutletView.as_view(),
129 name='device_bulk_add_poweroutlet'
130 ),
132 path('cooling-intakes/', include(get_model_urls('dcim', 'coolingintake', detail=False))),
133 path('cooling-intakes/<int:pk>/', include(get_model_urls('dcim', 'coolingintake'))),
134 path(
135 'devices/cooling-intakes/add/',
136 views.DeviceBulkAddCoolingIntakeView.as_view(),
137 name='device_bulk_add_coolingintake'
138 ),
140 path('cooling-outflows/', include(get_model_urls('dcim', 'coolingoutflow', detail=False))),
141 path('cooling-outflows/<int:pk>/', include(get_model_urls('dcim', 'coolingoutflow'))),
142 path(
143 'devices/cooling-outflows/add/',
144 views.DeviceBulkAddCoolingOutflowView.as_view(),
145 name='device_bulk_add_coolingoutflow'
146 ),
148 path('interfaces/', include(get_model_urls('dcim', 'interface', detail=False))),
149 path('interfaces/<int:pk>/', include(get_model_urls('dcim', 'interface'))),
150 path('devices/interfaces/add/', views.DeviceBulkAddInterfaceView.as_view(), name='device_bulk_add_interface'),
152 path('front-ports/', include(get_model_urls('dcim', 'frontport', detail=False))),
153 path('front-ports/<int:pk>/', include(get_model_urls('dcim', 'frontport'))),
155 path('rear-ports/', include(get_model_urls('dcim', 'rearport', detail=False))),
156 path('rear-ports/<int:pk>/', include(get_model_urls('dcim', 'rearport'))),
157 path('devices/rear-ports/add/', views.DeviceBulkAddRearPortView.as_view(), name='device_bulk_add_rearport'),
159 path('module-bays/', include(get_model_urls('dcim', 'modulebay', detail=False))),
160 path('module-bays/<int:pk>/', include(get_model_urls('dcim', 'modulebay'))),
161 path('devices/module-bays/add/', views.DeviceBulkAddModuleBayView.as_view(), name='device_bulk_add_modulebay'),
163 path('device-bays/', include(get_model_urls('dcim', 'devicebay', detail=False))),
164 path('device-bays/<int:pk>/', include(get_model_urls('dcim', 'devicebay'))),
165 path('devices/device-bays/add/', views.DeviceBulkAddDeviceBayView.as_view(), name='device_bulk_add_devicebay'),
167 path('inventory-items/', include(get_model_urls('dcim', 'inventoryitem', detail=False))),
168 path('inventory-items/<int:pk>/', include(get_model_urls('dcim', 'inventoryitem'))),
169 path(
170 'devices/inventory-items/add/',
171 views.DeviceBulkAddInventoryItemView.as_view(),
172 name='device_bulk_add_inventoryitem'
173 ),
175 path('inventory-item-roles/', include(get_model_urls('dcim', 'inventoryitemrole', detail=False))),
176 path('inventory-item-roles/<int:pk>/', include(get_model_urls('dcim', 'inventoryitemrole'))),
178 path('cables/', include(get_model_urls('dcim', 'cable', detail=False))),
179 path('cables/<int:pk>/', include(get_model_urls('dcim', 'cable'))),
181 path('cable-bundles/', include(get_model_urls('dcim', 'cablebundle', detail=False))),
182 path('cable-bundles/<int:pk>/', include(get_model_urls('dcim', 'cablebundle'))),
184 # Console/power/interface connections (read-only)
185 path('console-connections/', views.ConsoleConnectionsListView.as_view(), name='console_connections_list'),
186 path('power-connections/', views.PowerConnectionsListView.as_view(), name='power_connections_list'),
187 path('interface-connections/', views.InterfaceConnectionsListView.as_view(), name='interface_connections_list'),
189 path('virtual-chassis/', include(get_model_urls('dcim', 'virtualchassis', detail=False))),
190 path('virtual-chassis/<int:pk>/', include(get_model_urls('dcim', 'virtualchassis'))),
191 path(
192 'virtual-chassis-members/<int:pk>/delete/',
193 views.VirtualChassisRemoveMemberView.as_view(),
194 name='virtualchassis_remove_member'
195 ),
197 path('power-panels/', include(get_model_urls('dcim', 'powerpanel', detail=False))),
198 path('power-panels/<int:pk>/', include(get_model_urls('dcim', 'powerpanel'))),
200 path('power-feeds/', include(get_model_urls('dcim', 'powerfeed', detail=False))),
201 path('power-feeds/<int:pk>/', include(get_model_urls('dcim', 'powerfeed'))),
203 path('cooling-sources/', include(get_model_urls('dcim', 'coolingsource', detail=False))),
204 path('cooling-sources/<int:pk>/', include(get_model_urls('dcim', 'coolingsource'))),
206 path('cooling-feeds/', include(get_model_urls('dcim', 'coolingfeed', detail=False))),
207 path('cooling-feeds/<int:pk>/', include(get_model_urls('dcim', 'coolingfeed'))),
209 path('mac-addresses/', include(get_model_urls('dcim', 'macaddress', detail=False))),
210 path('mac-addresses/<int:pk>/', include(get_model_urls('dcim', 'macaddress'))),
212]