Rename individual object actions

This commit is contained in:
Jeremy Stretch 2025-06-27 14:51:18 -04:00
parent 60d80621ed
commit 57e041fd1a
8 changed files with 48 additions and 48 deletions

View File

@ -22,7 +22,7 @@ from rq.worker_registration import clean_worker_registry
from core.utils import delete_rq_job, enqueue_rq_job, get_rq_jobs_from_status, requeue_rq_job, stop_rq_job
from netbox.config import get_config, PARAMS
from netbox.object_actions import Add, BulkDelete, BulkExport, Delete
from netbox.object_actions import AddObject, BulkDelete, BulkExport, DeleteObject
from netbox.registry import registry
from netbox.views import generic
from netbox.views.generic.base import BaseObjectView
@ -145,7 +145,7 @@ class DataFileListView(generic.ObjectListView):
@register_model_view(DataFile)
class DataFileView(generic.ObjectView):
queryset = DataFile.objects.all()
actions = (Delete,)
actions = (DeleteObject,)
@register_model_view(DataFile, 'delete')
@ -176,7 +176,7 @@ class JobListView(generic.ObjectListView):
@register_model_view(Job)
class JobView(generic.ObjectView):
queryset = Job.objects.all()
actions = (Delete,)
actions = (DeleteObject,)
@register_model_view(Job, 'delete')
@ -270,7 +270,7 @@ class ConfigRevisionListView(generic.ObjectListView):
filterset = filtersets.ConfigRevisionFilterSet
filterset_form = forms.ConfigRevisionFilterForm
table = tables.ConfigRevisionTable
actions = (Add, BulkExport)
actions = (AddObject, BulkExport)
@register_model_view(ConfigRevision)

View File

@ -57,7 +57,7 @@ class DeviceComponentsView(generic.ObjectChildrenView):
class DeviceTypeComponentsView(generic.ObjectChildrenView):
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
queryset = DeviceType.objects.all()
viewname = None # Used for return_url resolution
@ -72,7 +72,7 @@ class DeviceTypeComponentsView(generic.ObjectChildrenView):
class ModuleTypeComponentsView(generic.ObjectChildrenView):
queryset = ModuleType.objects.all()
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
viewname = None # Used for return_url resolution
def get_children(self, request, parent):
@ -2108,7 +2108,7 @@ class DeviceListView(generic.ObjectListView):
filterset = filtersets.DeviceFilterSet
filterset_form = forms.DeviceFilterForm
table = tables.DeviceTable
actions = (Add, BulkImport, BulkExport, BulkEdit, BulkRename, BulkDelete)
actions = (AddObject, BulkImport, BulkExport, BulkEdit, BulkRename, BulkDelete)
template_name = 'dcim/device_list.html'
@ -2150,7 +2150,7 @@ class DeviceConsolePortsView(DeviceComponentsView):
table = tables.DeviceConsolePortTable
filterset = filtersets.ConsolePortFilterSet
filterset_form = forms.ConsolePortFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Console Ports'),
badge=lambda obj: obj.console_port_count,
@ -2166,7 +2166,7 @@ class DeviceConsoleServerPortsView(DeviceComponentsView):
table = tables.DeviceConsoleServerPortTable
filterset = filtersets.ConsoleServerPortFilterSet
filterset_form = forms.ConsoleServerPortFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Console Server Ports'),
badge=lambda obj: obj.console_server_port_count,
@ -2182,7 +2182,7 @@ class DevicePowerPortsView(DeviceComponentsView):
table = tables.DevicePowerPortTable
filterset = filtersets.PowerPortFilterSet
filterset_form = forms.PowerPortFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Power Ports'),
badge=lambda obj: obj.power_port_count,
@ -2198,7 +2198,7 @@ class DevicePowerOutletsView(DeviceComponentsView):
table = tables.DevicePowerOutletTable
filterset = filtersets.PowerOutletFilterSet
filterset_form = forms.PowerOutletFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Power Outlets'),
badge=lambda obj: obj.power_outlet_count,
@ -2214,7 +2214,7 @@ class DeviceInterfacesView(DeviceComponentsView):
table = tables.DeviceInterfaceTable
filterset = filtersets.InterfaceFilterSet
filterset_form = forms.InterfaceFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
template_name = 'dcim/device/interfaces.html'
tab = ViewTab(
label=_('Interfaces'),
@ -2237,7 +2237,7 @@ class DeviceFrontPortsView(DeviceComponentsView):
table = tables.DeviceFrontPortTable
filterset = filtersets.FrontPortFilterSet
filterset_form = forms.FrontPortFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Front Ports'),
badge=lambda obj: obj.front_port_count,
@ -2253,7 +2253,7 @@ class DeviceRearPortsView(DeviceComponentsView):
table = tables.DeviceRearPortTable
filterset = filtersets.RearPortFilterSet
filterset_form = forms.RearPortFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete, BulkDisconnect)
tab = ViewTab(
label=_('Rear Ports'),
badge=lambda obj: obj.rear_port_count,
@ -2269,7 +2269,7 @@ class DeviceModuleBaysView(DeviceComponentsView):
table = tables.DeviceModuleBayTable
filterset = filtersets.ModuleBayFilterSet
filterset_form = forms.ModuleBayFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
tab = ViewTab(
label=_('Module Bays'),
badge=lambda obj: obj.module_bay_count,
@ -2285,7 +2285,7 @@ class DeviceDeviceBaysView(DeviceComponentsView):
table = tables.DeviceDeviceBayTable
filterset = filtersets.DeviceBayFilterSet
filterset_form = forms.DeviceBayFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
tab = ViewTab(
label=_('Device Bays'),
badge=lambda obj: obj.device_bay_count,
@ -2301,7 +2301,7 @@ class DeviceInventoryView(DeviceComponentsView):
table = tables.DeviceInventoryItemTable
filterset = filtersets.InventoryItemFilterSet
filterset_form = forms.InventoryItemFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
tab = ViewTab(
label=_('Inventory Items'),
badge=lambda obj: obj.inventory_item_count,
@ -2454,7 +2454,7 @@ class ConsolePortListView(generic.ObjectListView):
filterset = filtersets.ConsolePortFilterSet
filterset_form = forms.ConsolePortFilterForm
table = tables.ConsolePortTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(ConsolePort)
@ -2525,7 +2525,7 @@ class ConsoleServerPortListView(generic.ObjectListView):
filterset = filtersets.ConsoleServerPortFilterSet
filterset_form = forms.ConsoleServerPortFilterForm
table = tables.ConsoleServerPortTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(ConsoleServerPort)
@ -2596,7 +2596,7 @@ class PowerPortListView(generic.ObjectListView):
filterset = filtersets.PowerPortFilterSet
filterset_form = forms.PowerPortFilterForm
table = tables.PowerPortTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(PowerPort)
@ -2667,7 +2667,7 @@ class PowerOutletListView(generic.ObjectListView):
filterset = filtersets.PowerOutletFilterSet
filterset_form = forms.PowerOutletFilterForm
table = tables.PowerOutletTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(PowerOutlet)
@ -2738,7 +2738,7 @@ class InterfaceListView(generic.ObjectListView):
filterset = filtersets.InterfaceFilterSet
filterset_form = forms.InterfaceFilterForm
table = tables.InterfaceTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(Interface)
@ -2882,7 +2882,7 @@ class FrontPortListView(generic.ObjectListView):
filterset = filtersets.FrontPortFilterSet
filterset_form = forms.FrontPortFilterForm
table = tables.FrontPortTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(FrontPort)
@ -2953,7 +2953,7 @@ class RearPortListView(generic.ObjectListView):
filterset = filtersets.RearPortFilterSet
filterset_form = forms.RearPortFilterForm
table = tables.RearPortTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(RearPort)
@ -3024,7 +3024,7 @@ class ModuleBayListView(generic.ObjectListView):
filterset = filtersets.ModuleBayFilterSet
filterset_form = forms.ModuleBayFilterForm
table = tables.ModuleBayTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(ModuleBay)
@ -3086,7 +3086,7 @@ class DeviceBayListView(generic.ObjectListView):
filterset = filtersets.DeviceBayFilterSet
filterset_form = forms.DeviceBayFilterForm
table = tables.DeviceBayTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(DeviceBay)
@ -3229,7 +3229,7 @@ class InventoryItemListView(generic.ObjectListView):
filterset = filtersets.InventoryItemFilterSet
filterset_form = forms.InventoryItemFilterForm
table = tables.InventoryItemTable
actions = (Add, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkRename, BulkExport, BulkDelete)
@register_model_view(InventoryItem)

View File

@ -233,7 +233,7 @@ class ExportTemplateListView(generic.ObjectListView):
filterset = filtersets.ExportTemplateFilterSet
filterset_form = forms.ExportTemplateFilterForm
table = tables.ExportTemplateTable
actions = (Add, BulkImport, BulkSync, BulkEdit, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkSync, BulkEdit, BulkExport, BulkDelete)
@register_model_view(ExportTemplate)
@ -753,7 +753,7 @@ class ConfigContextListView(generic.ObjectListView):
filterset = filtersets.ConfigContextFilterSet
filterset_form = forms.ConfigContextFilterForm
table = tables.ConfigContextTable
actions = (Add, BulkSync, BulkEdit, BulkDelete)
actions = (AddObject, BulkSync, BulkEdit, BulkDelete)
@register_model_view(ConfigContext)
@ -866,7 +866,7 @@ class ConfigTemplateListView(generic.ObjectListView):
filterset = filtersets.ConfigTemplateFilterSet
filterset_form = forms.ConfigTemplateFilterForm
table = tables.ConfigTemplateTable
actions = (Add, BulkImport, BulkSync, BulkEdit, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkSync, BulkEdit, BulkExport, BulkDelete)
@register_model_view(ConfigTemplate)

View File

@ -5,14 +5,14 @@ from core.models import ObjectType
from extras.models import ExportTemplate
__all__ = (
'Add',
'AddObject',
'BulkDelete',
'BulkEdit',
'BulkExport',
'BulkImport',
'BulkRename',
'Delete',
'Edit',
'DeleteObject',
'EditObject',
'ObjectAction',
)
@ -40,7 +40,7 @@ class ObjectAction:
}
class Add(ObjectAction):
class AddObject(ObjectAction):
"""
Create a new object.
"""
@ -50,7 +50,7 @@ class Add(ObjectAction):
template_name = 'buttons/add.html'
class Edit(ObjectAction):
class EditObject(ObjectAction):
"""
Edit a single object.
"""
@ -61,7 +61,7 @@ class Edit(ObjectAction):
template_name = 'buttons/edit.html'
class Delete(ObjectAction):
class DeleteObject(ObjectAction):
"""
Delete a single object.
"""

View File

@ -22,7 +22,7 @@ from core.models import ObjectType
from core.signals import clear_events
from extras.choices import CustomFieldUIEditableChoices
from extras.models import CustomField, ExportTemplate
from netbox.object_actions import Add, BulkDelete, BulkEdit, BulkExport, BulkImport
from netbox.object_actions import AddObject, BulkDelete, BulkEdit, BulkExport, BulkImport
from utilities.error_handlers import handle_protectederror
from utilities.exceptions import AbortRequest, AbortTransaction, PermissionsViolation
from utilities.forms import BulkRenameForm, ConfirmationForm, restrict_form_fields
@ -61,7 +61,7 @@ class ObjectListView(BaseMultiObjectView, ActionsMixin, TableMixin):
template_name = 'generic/object_list.html'
filterset = None
filterset_form = None
actions = (Add, BulkImport, BulkEdit, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkExport, BulkDelete)
def get_required_permission(self):
return get_permission_for_model(self.queryset.model, 'view')

View File

@ -28,9 +28,9 @@ class ActionsMixin:
Given a legacy action name, return the corresponding action class.
"""
action = {
'add': object_actions.Add,
'edit': object_actions.Edit,
'delete': object_actions.Delete,
'add': object_actions.AddObject,
'edit': object_actions.EditObject,
'delete': object_actions.DeleteObject,
'export': object_actions.BulkExport,
'bulk_import': object_actions.BulkImport,
'bulk_edit': object_actions.BulkEdit,

View File

@ -14,7 +14,7 @@ from django.utils.safestring import mark_safe
from django.utils.translation import gettext as _
from core.signals import clear_events
from netbox.object_actions import Add, BulkDelete, BulkEdit, BulkExport, BulkImport, Delete, Edit
from netbox.object_actions import AddObject, BulkDelete, BulkEdit, BulkExport, BulkImport, DeleteObject, EditObject
from utilities.error_handlers import handle_protectederror
from utilities.exceptions import AbortRequest, PermissionsViolation
from utilities.forms import ConfirmationForm, restrict_form_fields
@ -47,7 +47,7 @@ class ObjectView(ActionsMixin, BaseObjectView):
tab: A ViewTab instance for the view
"""
tab = None
actions = (Edit, Delete)
actions = (EditObject, DeleteObject)
def get_required_permission(self):
return get_permission_for_model(self.queryset.model, 'view')
@ -101,7 +101,7 @@ class ObjectChildrenView(ObjectView, ActionsMixin, TableMixin):
table = None
filterset = None
filterset_form = None
actions = (Add, BulkImport, BulkEdit, BulkExport, BulkDelete)
actions = (AddObject, BulkImport, BulkEdit, BulkExport, BulkDelete)
template_name = 'generic/object_children.html'
def get_children(self, request, parent):

View File

@ -204,7 +204,7 @@ class ClusterVirtualMachinesView(generic.ObjectChildrenView):
table = tables.VirtualMachineTable
filterset = filtersets.VirtualMachineFilterSet
filterset_form = forms.VirtualMachineFilterForm
actions = (Edit, Delete, BulkEdit)
actions = (EditObject, DeleteObject, BulkEdit)
tab = ViewTab(
label=_('Virtual Machines'),
badge=lambda obj: obj.virtual_machines.count(),
@ -223,7 +223,7 @@ class ClusterDevicesView(generic.ObjectChildrenView):
table = DeviceTable
filterset = DeviceFilterSet
filterset_form = DeviceFilterForm
actions = (Edit, Delete, BulkEdit)
actions = (EditObject, DeleteObject, BulkEdit)
tab = ViewTab(
label=_('Devices'),
badge=lambda obj: obj.devices.count(),
@ -336,7 +336,7 @@ class VirtualMachineInterfacesView(generic.ObjectChildrenView):
table = tables.VirtualMachineVMInterfaceTable
filterset = filtersets.VMInterfaceFilterSet
filterset_form = forms.VMInterfaceFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
tab = ViewTab(
label=_('Interfaces'),
badge=lambda obj: obj.interface_count,
@ -358,7 +358,7 @@ class VirtualMachineVirtualDisksView(generic.ObjectChildrenView):
table = tables.VirtualMachineVirtualDiskTable
filterset = filtersets.VirtualDiskFilterSet
filterset_form = forms.VirtualDiskFilterForm
actions = (Edit, Delete, BulkEdit, BulkRename, BulkDelete)
actions = (EditObject, DeleteObject, BulkEdit, BulkRename, BulkDelete)
tab = ViewTab(
label=_('Virtual Disks'),
badge=lambda obj: obj.virtual_disk_count,