Register core list views with register_model_view()

This commit is contained in:
Jeremy Stretch 2024-11-19 16:31:13 -05:00
parent 1b2c38c14c
commit b9e032bc3f
2 changed files with 22 additions and 23 deletions

View File

@ -6,27 +6,16 @@ from . import views
app_name = 'core' app_name = 'core'
urlpatterns = ( urlpatterns = (
# Data sources path('data-sources/', include(get_model_urls('core', 'datasource', detail=False))),
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/<int:pk>/', include(get_model_urls('core', 'datasource'))), path('data-sources/<int:pk>/', include(get_model_urls('core', 'datasource'))),
# Data files path('data-files/', include(get_model_urls('core', 'datafile', detail=False))),
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/<int:pk>/', include(get_model_urls('core', 'datafile'))), path('data-files/<int:pk>/', include(get_model_urls('core', 'datafile'))),
# Job results path('jobs/', include(get_model_urls('core', 'job', detail=False))),
path('jobs/', views.JobListView.as_view(), name='job_list'), path('jobs/<int:pk>/', include(get_model_urls('core', 'job'))),
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'),
# Change logging path('changelog/', include(get_model_urls('core', 'objectchange', detail=False))),
path('changelog/', views.ObjectChangeListView.as_view(), name='objectchange_list'),
path('changelog/<int:pk>/', include(get_model_urls('core', 'objectchange'))), path('changelog/<int:pk>/', include(get_model_urls('core', 'objectchange'))),
# Background Tasks # Background Tasks
@ -40,17 +29,11 @@ urlpatterns = (
path('background-workers/<int:queue_index>/', views.WorkerListView.as_view(), name='worker_list'), path('background-workers/<int:queue_index>/', views.WorkerListView.as_view(), name='worker_list'),
path('background-workers/<str:key>/', views.WorkerView.as_view(), name='worker'), path('background-workers/<str:key>/', views.WorkerView.as_view(), name='worker'),
# Config revisions path('config-revisions/', include(get_model_urls('core', 'configrevision', detail=False))),
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/<int:pk>/', include(get_model_urls('core', 'configrevision'))), path('config-revisions/<int:pk>/', include(get_model_urls('core', 'configrevision'))),
# System
path('system/', views.SystemView.as_view(), name='system'), path('system/', views.SystemView.as_view(), name='system'),
# Plugins
path('plugins/', views.PluginListView.as_view(), name='plugin_list'), path('plugins/', views.PluginListView.as_view(), name='plugin_list'),
path('plugins/<str:name>/', views.PluginView.as_view(), name='plugin'), path('plugins/<str:name>/', views.PluginView.as_view(), name='plugin'),
) )

View File

@ -46,6 +46,7 @@ from .tables import CatalogPluginTable, PluginVersionTable
# Data sources # Data sources
# #
@register_model_view(DataSource, 'list', path='', detail=False)
class DataSourceListView(generic.ObjectListView): class DataSourceListView(generic.ObjectListView):
queryset = DataSource.objects.annotate( queryset = DataSource.objects.annotate(
file_count=count_related(DataFile, 'source') file_count=count_related(DataFile, 'source')
@ -92,6 +93,7 @@ class DataSourceSyncView(BaseObjectView):
return redirect(datasource.get_absolute_url()) return redirect(datasource.get_absolute_url())
@register_model_view(DataSource, 'add', detail=False)
@register_model_view(DataSource, 'edit') @register_model_view(DataSource, 'edit')
class DataSourceEditView(generic.ObjectEditView): class DataSourceEditView(generic.ObjectEditView):
queryset = DataSource.objects.all() queryset = DataSource.objects.all()
@ -103,11 +105,13 @@ class DataSourceDeleteView(generic.ObjectDeleteView):
queryset = DataSource.objects.all() queryset = DataSource.objects.all()
@register_model_view(DataSource, 'import', detail=False)
class DataSourceBulkImportView(generic.BulkImportView): class DataSourceBulkImportView(generic.BulkImportView):
queryset = DataSource.objects.all() queryset = DataSource.objects.all()
model_form = forms.DataSourceImportForm model_form = forms.DataSourceImportForm
@register_model_view(DataSource, 'bulk_edit', detail=False)
class DataSourceBulkEditView(generic.BulkEditView): class DataSourceBulkEditView(generic.BulkEditView):
queryset = DataSource.objects.annotate( queryset = DataSource.objects.annotate(
count_files=count_related(DataFile, 'source') count_files=count_related(DataFile, 'source')
@ -117,6 +121,7 @@ class DataSourceBulkEditView(generic.BulkEditView):
form = forms.DataSourceBulkEditForm form = forms.DataSourceBulkEditForm
@register_model_view(DataSource, 'bulk_delete', detail=False)
class DataSourceBulkDeleteView(generic.BulkDeleteView): class DataSourceBulkDeleteView(generic.BulkDeleteView):
queryset = DataSource.objects.annotate( queryset = DataSource.objects.annotate(
count_files=count_related(DataFile, 'source') count_files=count_related(DataFile, 'source')
@ -129,6 +134,7 @@ class DataSourceBulkDeleteView(generic.BulkDeleteView):
# Data files # Data files
# #
@register_model_view(DataFile, 'list', path='', detail=False)
class DataFileListView(generic.ObjectListView): class DataFileListView(generic.ObjectListView):
queryset = DataFile.objects.defer('data') queryset = DataFile.objects.defer('data')
filterset = filtersets.DataFileFilterSet filterset = filtersets.DataFileFilterSet
@ -149,6 +155,7 @@ class DataFileDeleteView(generic.ObjectDeleteView):
queryset = DataFile.objects.all() queryset = DataFile.objects.all()
@register_model_view(DataFile, 'bulk_delete', detail=False)
class DataFileBulkDeleteView(generic.BulkDeleteView): class DataFileBulkDeleteView(generic.BulkDeleteView):
queryset = DataFile.objects.defer('data') queryset = DataFile.objects.defer('data')
filterset = filtersets.DataFileFilterSet filterset = filtersets.DataFileFilterSet
@ -159,6 +166,7 @@ class DataFileBulkDeleteView(generic.BulkDeleteView):
# Jobs # Jobs
# #
@register_model_view(Job, 'list', path='', detail=False)
class JobListView(generic.ObjectListView): class JobListView(generic.ObjectListView):
queryset = Job.objects.all() queryset = Job.objects.all()
filterset = filtersets.JobFilterSet filterset = filtersets.JobFilterSet
@ -170,14 +178,17 @@ class JobListView(generic.ObjectListView):
} }
@register_model_view(Job)
class JobView(generic.ObjectView): class JobView(generic.ObjectView):
queryset = Job.objects.all() queryset = Job.objects.all()
@register_model_view(Job, 'delete')
class JobDeleteView(generic.ObjectDeleteView): class JobDeleteView(generic.ObjectDeleteView):
queryset = Job.objects.all() queryset = Job.objects.all()
@register_model_view(Job, 'bulk_delete', detail=False)
class JobBulkDeleteView(generic.BulkDeleteView): class JobBulkDeleteView(generic.BulkDeleteView):
queryset = Job.objects.all() queryset = Job.objects.all()
filterset = filtersets.JobFilterSet filterset = filtersets.JobFilterSet
@ -188,6 +199,7 @@ class JobBulkDeleteView(generic.BulkDeleteView):
# Change logging # Change logging
# #
@register_model_view(ObjectChange, 'list', path='', detail=False)
class ObjectChangeListView(generic.ObjectListView): class ObjectChangeListView(generic.ObjectListView):
queryset = ObjectChange.objects.valid_models() queryset = ObjectChange.objects.valid_models()
filterset = filtersets.ObjectChangeFilterSet filterset = filtersets.ObjectChangeFilterSet
@ -257,6 +269,7 @@ class ObjectChangeView(generic.ObjectView):
# Config Revisions # Config Revisions
# #
@register_model_view(ConfigRevision, 'list', path='', detail=False)
class ConfigRevisionListView(generic.ObjectListView): class ConfigRevisionListView(generic.ObjectListView):
queryset = ConfigRevision.objects.all() queryset = ConfigRevision.objects.all()
filterset = filtersets.ConfigRevisionFilterSet filterset = filtersets.ConfigRevisionFilterSet
@ -269,6 +282,7 @@ class ConfigRevisionView(generic.ObjectView):
queryset = ConfigRevision.objects.all() queryset = ConfigRevision.objects.all()
@register_model_view(ConfigRevision, 'add', detail=False)
class ConfigRevisionEditView(generic.ObjectEditView): class ConfigRevisionEditView(generic.ObjectEditView):
queryset = ConfigRevision.objects.all() queryset = ConfigRevision.objects.all()
form = forms.ConfigRevisionForm form = forms.ConfigRevisionForm
@ -279,12 +293,14 @@ class ConfigRevisionDeleteView(generic.ObjectDeleteView):
queryset = ConfigRevision.objects.all() queryset = ConfigRevision.objects.all()
@register_model_view(ConfigRevision, 'bulk_delete', detail=False)
class ConfigRevisionBulkDeleteView(generic.BulkDeleteView): class ConfigRevisionBulkDeleteView(generic.BulkDeleteView):
queryset = ConfigRevision.objects.all() queryset = ConfigRevision.objects.all()
filterset = filtersets.ConfigRevisionFilterSet filterset = filtersets.ConfigRevisionFilterSet
table = tables.ConfigRevisionTable table = tables.ConfigRevisionTable
@register_model_view(ConfigRevision, 'restore')
class ConfigRevisionRestoreView(ContentTypePermissionRequiredMixin, View): class ConfigRevisionRestoreView(ContentTypePermissionRequiredMixin, View):
def get_required_permission(self): def get_required_permission(self):