first commit
This commit is contained in:
86
netbox_librenms_plugin/views/mapping_views.py
Normal file
86
netbox_librenms_plugin/views/mapping_views.py
Normal file
@@ -0,0 +1,86 @@
|
||||
from netbox.views import generic
|
||||
from utilities.views import register_model_view
|
||||
|
||||
from netbox_librenms_plugin.filters import InterfaceTypeMappingFilterSet
|
||||
from netbox_librenms_plugin.forms import (
|
||||
InterfaceTypeMappingFilterForm,
|
||||
InterfaceTypeMappingForm,
|
||||
InterfaceTypeMappingImportForm,
|
||||
)
|
||||
from netbox_librenms_plugin.models import InterfaceTypeMapping
|
||||
from netbox_librenms_plugin.tables.mappings import InterfaceTypeMappingTable
|
||||
from netbox_librenms_plugin.views.mixins import LibreNMSPermissionMixin
|
||||
|
||||
|
||||
class InterfaceTypeMappingListView(LibreNMSPermissionMixin, generic.ObjectListView):
|
||||
"""
|
||||
Provides a view for listing all `InterfaceTypeMapping` objects.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
table = InterfaceTypeMappingTable
|
||||
filterset = InterfaceTypeMappingFilterSet
|
||||
filterset_form = InterfaceTypeMappingFilterForm
|
||||
template_name = "netbox_librenms_plugin/interfacetypemapping_list.html"
|
||||
|
||||
|
||||
class InterfaceTypeMappingCreateView(LibreNMSPermissionMixin, generic.ObjectEditView):
|
||||
"""
|
||||
Provides a view for creating a new `InterfaceTypeMapping` object.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
form = InterfaceTypeMappingForm
|
||||
|
||||
|
||||
@register_model_view(InterfaceTypeMapping, "bulk_import", path="import", detail=False)
|
||||
class InterfaceTypeMappingBulkImportView(LibreNMSPermissionMixin, generic.BulkImportView):
|
||||
"""
|
||||
Provides a view for bulk importing `InterfaceTypeMapping` objects from CSV, JSON, or YAML.
|
||||
Supports three import methods: direct import, file upload, and data file.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
model_form = InterfaceTypeMappingImportForm
|
||||
|
||||
|
||||
class InterfaceTypeMappingView(LibreNMSPermissionMixin, generic.ObjectView):
|
||||
"""
|
||||
Provides a view for displaying details of a specific `InterfaceTypeMapping` object.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
|
||||
|
||||
class InterfaceTypeMappingEditView(LibreNMSPermissionMixin, generic.ObjectEditView):
|
||||
"""
|
||||
Provides a view for editing a specific `InterfaceTypeMapping` object.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
form = InterfaceTypeMappingForm
|
||||
|
||||
|
||||
class InterfaceTypeMappingDeleteView(LibreNMSPermissionMixin, generic.ObjectDeleteView):
|
||||
"""
|
||||
Provides a view for deleting a specific `InterfaceTypeMapping` object.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
|
||||
|
||||
class InterfaceTypeMappingBulkDeleteView(LibreNMSPermissionMixin, generic.BulkDeleteView):
|
||||
"""
|
||||
Provides a view for deleting multiple `InterfaceTypeMapping` objects.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
table = InterfaceTypeMappingTable
|
||||
|
||||
|
||||
class InterfaceTypeMappingChangeLogView(LibreNMSPermissionMixin, generic.ObjectChangeLogView):
|
||||
"""
|
||||
Provides a view for displaying the change log of a specific `InterfaceTypeMapping` object.
|
||||
"""
|
||||
|
||||
queryset = InterfaceTypeMapping.objects.all()
|
||||
Reference in New Issue
Block a user