mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-18 13:06:30 -06:00
Converted home view to a CBV
This commit is contained in:
parent
713c7cd8e3
commit
3fa63b774e
@ -5,7 +5,7 @@ from django.conf.urls import include, url
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.views.static import serve
|
from django.views.static import serve
|
||||||
|
|
||||||
from netbox.views import APIRootView, home, handle_500, SearchView, trigger_500
|
from netbox.views import APIRootView, handle_500, HomeView, SearchView, trigger_500
|
||||||
from users.views import LoginView, LogoutView
|
from users.views import LoginView, LogoutView
|
||||||
|
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ swagger_view = get_swagger_view(title='NetBox API')
|
|||||||
_patterns = [
|
_patterns = [
|
||||||
|
|
||||||
# Base views
|
# Base views
|
||||||
url(r'^$', home, name='home'),
|
url(r'^$', HomeView.as_view(), name='home'),
|
||||||
url(r'^search/$', SearchView.as_view(), name='search'),
|
url(r'^search/$', SearchView.as_view(), name='search'),
|
||||||
|
|
||||||
# Login/logout
|
# Login/logout
|
||||||
|
@ -115,43 +115,46 @@ SEARCH_TYPES = OrderedDict((
|
|||||||
))
|
))
|
||||||
|
|
||||||
|
|
||||||
def home(request):
|
class HomeView(View):
|
||||||
|
template_name = 'home.html'
|
||||||
|
|
||||||
stats = {
|
def get(self, request):
|
||||||
|
|
||||||
# Organization
|
stats = {
|
||||||
'site_count': Site.objects.count(),
|
|
||||||
'tenant_count': Tenant.objects.count(),
|
|
||||||
|
|
||||||
# DCIM
|
# Organization
|
||||||
'rack_count': Rack.objects.count(),
|
'site_count': Site.objects.count(),
|
||||||
'device_count': Device.objects.count(),
|
'tenant_count': Tenant.objects.count(),
|
||||||
'interface_connections_count': InterfaceConnection.objects.count(),
|
|
||||||
'console_connections_count': ConsolePort.objects.filter(cs_port__isnull=False).count(),
|
|
||||||
'power_connections_count': PowerPort.objects.filter(power_outlet__isnull=False).count(),
|
|
||||||
|
|
||||||
# IPAM
|
# DCIM
|
||||||
'vrf_count': VRF.objects.count(),
|
'rack_count': Rack.objects.count(),
|
||||||
'aggregate_count': Aggregate.objects.count(),
|
'device_count': Device.objects.count(),
|
||||||
'prefix_count': Prefix.objects.count(),
|
'interface_connections_count': InterfaceConnection.objects.count(),
|
||||||
'ipaddress_count': IPAddress.objects.count(),
|
'console_connections_count': ConsolePort.objects.filter(cs_port__isnull=False).count(),
|
||||||
'vlan_count': VLAN.objects.count(),
|
'power_connections_count': PowerPort.objects.filter(power_outlet__isnull=False).count(),
|
||||||
|
|
||||||
# Circuits
|
# IPAM
|
||||||
'provider_count': Provider.objects.count(),
|
'vrf_count': VRF.objects.count(),
|
||||||
'circuit_count': Circuit.objects.count(),
|
'aggregate_count': Aggregate.objects.count(),
|
||||||
|
'prefix_count': Prefix.objects.count(),
|
||||||
|
'ipaddress_count': IPAddress.objects.count(),
|
||||||
|
'vlan_count': VLAN.objects.count(),
|
||||||
|
|
||||||
# Secrets
|
# Circuits
|
||||||
'secret_count': Secret.objects.count(),
|
'provider_count': Provider.objects.count(),
|
||||||
|
'circuit_count': Circuit.objects.count(),
|
||||||
|
|
||||||
}
|
# Secrets
|
||||||
|
'secret_count': Secret.objects.count(),
|
||||||
|
|
||||||
return render(request, 'home.html', {
|
}
|
||||||
'search_form': SearchForm(),
|
|
||||||
'stats': stats,
|
return render(request, self.template_name, {
|
||||||
'topology_maps': TopologyMap.objects.filter(site__isnull=True),
|
'search_form': SearchForm(),
|
||||||
'recent_activity': UserAction.objects.select_related('user')[:50]
|
'stats': stats,
|
||||||
})
|
'topology_maps': TopologyMap.objects.filter(site__isnull=True),
|
||||||
|
'recent_activity': UserAction.objects.select_related('user')[:50]
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
class SearchView(View):
|
class SearchView(View):
|
||||||
@ -235,5 +238,6 @@ def trigger_500(request):
|
|||||||
"""
|
"""
|
||||||
Hot-wired method of triggering a server error to test reporting
|
Hot-wired method of triggering a server error to test reporting
|
||||||
"""
|
"""
|
||||||
raise Exception("Congratulations, you've triggered an exception! Go tell all your friends what an exceptional "
|
raise Exception(
|
||||||
"person you are.")
|
"Congratulations, you've triggered an exception! Go tell all your friends what an exceptional person you are."
|
||||||
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user