mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-29 03:46:25 -06:00
Register core list views with register_model_view()
This commit is contained in:
parent
1b2c38c14c
commit
b9e032bc3f
@ -6,27 +6,16 @@ from . import views
|
||||
app_name = 'core'
|
||||
urlpatterns = (
|
||||
|
||||
# Data sources
|
||||
path('data-sources/', views.DataSourceListView.as_view(), name='datasource_list'),
|
||||
path('data-sources/add/', views.DataSourceEditView.as_view(), name='datasource_add'),
|
||||
path('data-sources/import/', views.DataSourceBulkImportView.as_view(), name='datasource_import'),
|
||||
path('data-sources/edit/', views.DataSourceBulkEditView.as_view(), name='datasource_bulk_edit'),
|
||||
path('data-sources/delete/', views.DataSourceBulkDeleteView.as_view(), name='datasource_bulk_delete'),
|
||||
path('data-sources/', include(get_model_urls('core', 'datasource', detail=False))),
|
||||
path('data-sources/<int:pk>/', include(get_model_urls('core', 'datasource'))),
|
||||
|
||||
# Data files
|
||||
path('data-files/', views.DataFileListView.as_view(), name='datafile_list'),
|
||||
path('data-files/delete/', views.DataFileBulkDeleteView.as_view(), name='datafile_bulk_delete'),
|
||||
path('data-files/', include(get_model_urls('core', 'datafile', detail=False))),
|
||||
path('data-files/<int:pk>/', include(get_model_urls('core', 'datafile'))),
|
||||
|
||||
# Job results
|
||||
path('jobs/', views.JobListView.as_view(), name='job_list'),
|
||||
path('jobs/delete/', views.JobBulkDeleteView.as_view(), name='job_bulk_delete'),
|
||||
path('jobs/<int:pk>/', views.JobView.as_view(), name='job'),
|
||||
path('jobs/<int:pk>/delete/', views.JobDeleteView.as_view(), name='job_delete'),
|
||||
path('jobs/', include(get_model_urls('core', 'job', detail=False))),
|
||||
path('jobs/<int:pk>/', include(get_model_urls('core', 'job'))),
|
||||
|
||||
# Change logging
|
||||
path('changelog/', views.ObjectChangeListView.as_view(), name='objectchange_list'),
|
||||
path('changelog/', include(get_model_urls('core', 'objectchange', detail=False))),
|
||||
path('changelog/<int:pk>/', include(get_model_urls('core', 'objectchange'))),
|
||||
|
||||
# Background Tasks
|
||||
@ -40,17 +29,11 @@ urlpatterns = (
|
||||
path('background-workers/<int:queue_index>/', views.WorkerListView.as_view(), name='worker_list'),
|
||||
path('background-workers/<str:key>/', views.WorkerView.as_view(), name='worker'),
|
||||
|
||||
# Config revisions
|
||||
path('config-revisions/', views.ConfigRevisionListView.as_view(), name='configrevision_list'),
|
||||
path('config-revisions/add/', views.ConfigRevisionEditView.as_view(), name='configrevision_add'),
|
||||
path('config-revisions/delete/', views.ConfigRevisionBulkDeleteView.as_view(), name='configrevision_bulk_delete'),
|
||||
path('config-revisions/<int:pk>/restore/', views.ConfigRevisionRestoreView.as_view(), name='configrevision_restore'),
|
||||
path('config-revisions/', include(get_model_urls('core', 'configrevision', detail=False))),
|
||||
path('config-revisions/<int:pk>/', include(get_model_urls('core', 'configrevision'))),
|
||||
|
||||
# System
|
||||
path('system/', views.SystemView.as_view(), name='system'),
|
||||
|
||||
# Plugins
|
||||
path('plugins/', views.PluginListView.as_view(), name='plugin_list'),
|
||||
path('plugins/<str:name>/', views.PluginView.as_view(), name='plugin'),
|
||||
)
|
||||
|
@ -46,6 +46,7 @@ from .tables import CatalogPluginTable, PluginVersionTable
|
||||
# Data sources
|
||||
#
|
||||
|
||||
@register_model_view(DataSource, 'list', path='', detail=False)
|
||||
class DataSourceListView(generic.ObjectListView):
|
||||
queryset = DataSource.objects.annotate(
|
||||
file_count=count_related(DataFile, 'source')
|
||||
@ -92,6 +93,7 @@ class DataSourceSyncView(BaseObjectView):
|
||||
return redirect(datasource.get_absolute_url())
|
||||
|
||||
|
||||
@register_model_view(DataSource, 'add', detail=False)
|
||||
@register_model_view(DataSource, 'edit')
|
||||
class DataSourceEditView(generic.ObjectEditView):
|
||||
queryset = DataSource.objects.all()
|
||||
@ -103,11 +105,13 @@ class DataSourceDeleteView(generic.ObjectDeleteView):
|
||||
queryset = DataSource.objects.all()
|
||||
|
||||
|
||||
@register_model_view(DataSource, 'import', detail=False)
|
||||
class DataSourceBulkImportView(generic.BulkImportView):
|
||||
queryset = DataSource.objects.all()
|
||||
model_form = forms.DataSourceImportForm
|
||||
|
||||
|
||||
@register_model_view(DataSource, 'bulk_edit', detail=False)
|
||||
class DataSourceBulkEditView(generic.BulkEditView):
|
||||
queryset = DataSource.objects.annotate(
|
||||
count_files=count_related(DataFile, 'source')
|
||||
@ -117,6 +121,7 @@ class DataSourceBulkEditView(generic.BulkEditView):
|
||||
form = forms.DataSourceBulkEditForm
|
||||
|
||||
|
||||
@register_model_view(DataSource, 'bulk_delete', detail=False)
|
||||
class DataSourceBulkDeleteView(generic.BulkDeleteView):
|
||||
queryset = DataSource.objects.annotate(
|
||||
count_files=count_related(DataFile, 'source')
|
||||
@ -129,6 +134,7 @@ class DataSourceBulkDeleteView(generic.BulkDeleteView):
|
||||
# Data files
|
||||
#
|
||||
|
||||
@register_model_view(DataFile, 'list', path='', detail=False)
|
||||
class DataFileListView(generic.ObjectListView):
|
||||
queryset = DataFile.objects.defer('data')
|
||||
filterset = filtersets.DataFileFilterSet
|
||||
@ -149,6 +155,7 @@ class DataFileDeleteView(generic.ObjectDeleteView):
|
||||
queryset = DataFile.objects.all()
|
||||
|
||||
|
||||
@register_model_view(DataFile, 'bulk_delete', detail=False)
|
||||
class DataFileBulkDeleteView(generic.BulkDeleteView):
|
||||
queryset = DataFile.objects.defer('data')
|
||||
filterset = filtersets.DataFileFilterSet
|
||||
@ -159,6 +166,7 @@ class DataFileBulkDeleteView(generic.BulkDeleteView):
|
||||
# Jobs
|
||||
#
|
||||
|
||||
@register_model_view(Job, 'list', path='', detail=False)
|
||||
class JobListView(generic.ObjectListView):
|
||||
queryset = Job.objects.all()
|
||||
filterset = filtersets.JobFilterSet
|
||||
@ -170,14 +178,17 @@ class JobListView(generic.ObjectListView):
|
||||
}
|
||||
|
||||
|
||||
@register_model_view(Job)
|
||||
class JobView(generic.ObjectView):
|
||||
queryset = Job.objects.all()
|
||||
|
||||
|
||||
@register_model_view(Job, 'delete')
|
||||
class JobDeleteView(generic.ObjectDeleteView):
|
||||
queryset = Job.objects.all()
|
||||
|
||||
|
||||
@register_model_view(Job, 'bulk_delete', detail=False)
|
||||
class JobBulkDeleteView(generic.BulkDeleteView):
|
||||
queryset = Job.objects.all()
|
||||
filterset = filtersets.JobFilterSet
|
||||
@ -188,6 +199,7 @@ class JobBulkDeleteView(generic.BulkDeleteView):
|
||||
# Change logging
|
||||
#
|
||||
|
||||
@register_model_view(ObjectChange, 'list', path='', detail=False)
|
||||
class ObjectChangeListView(generic.ObjectListView):
|
||||
queryset = ObjectChange.objects.valid_models()
|
||||
filterset = filtersets.ObjectChangeFilterSet
|
||||
@ -257,6 +269,7 @@ class ObjectChangeView(generic.ObjectView):
|
||||
# Config Revisions
|
||||
#
|
||||
|
||||
@register_model_view(ConfigRevision, 'list', path='', detail=False)
|
||||
class ConfigRevisionListView(generic.ObjectListView):
|
||||
queryset = ConfigRevision.objects.all()
|
||||
filterset = filtersets.ConfigRevisionFilterSet
|
||||
@ -269,6 +282,7 @@ class ConfigRevisionView(generic.ObjectView):
|
||||
queryset = ConfigRevision.objects.all()
|
||||
|
||||
|
||||
@register_model_view(ConfigRevision, 'add', detail=False)
|
||||
class ConfigRevisionEditView(generic.ObjectEditView):
|
||||
queryset = ConfigRevision.objects.all()
|
||||
form = forms.ConfigRevisionForm
|
||||
@ -279,12 +293,14 @@ class ConfigRevisionDeleteView(generic.ObjectDeleteView):
|
||||
queryset = ConfigRevision.objects.all()
|
||||
|
||||
|
||||
@register_model_view(ConfigRevision, 'bulk_delete', detail=False)
|
||||
class ConfigRevisionBulkDeleteView(generic.BulkDeleteView):
|
||||
queryset = ConfigRevision.objects.all()
|
||||
filterset = filtersets.ConfigRevisionFilterSet
|
||||
table = tables.ConfigRevisionTable
|
||||
|
||||
|
||||
@register_model_view(ConfigRevision, 'restore')
|
||||
class ConfigRevisionRestoreView(ContentTypePermissionRequiredMixin, View):
|
||||
|
||||
def get_required_permission(self):
|
||||
|
Loading…
Reference in New Issue
Block a user