feat: integriertes Dokumentations-Wiki für NetBox hinzufügen
- Markdown-Dokumentationen direkt in NetBox erstellen - Dokumente Standorten, Racks, Geräten, VMs und Clustern zuordnen - DOCX-, XLSX-, PDF-, Markdown- und Textimporte unterstützen - REST-API, Suche, Berechtigungen und Änderungsprotokoll ergänzen - Installation, Konfiguration und Importgrenzen dokumentieren
This commit is contained in:
@@ -0,0 +1 @@
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
from netbox.api.serializers import NetBoxModelSerializer
|
||||
from rest_framework import serializers
|
||||
from ..models import Document, DocumentAssignment
|
||||
|
||||
|
||||
class DocumentSerializer(NetBoxModelSerializer):
|
||||
url = serializers.HyperlinkedIdentityField(view_name="plugins-api:netbox_documentation-api:document-detail")
|
||||
|
||||
class Meta:
|
||||
model = Document
|
||||
fields = ("id", "url", "display", "title", "slug", "summary", "body", "is_published", "tags", "created", "last_updated")
|
||||
|
||||
|
||||
class DocumentAssignmentSerializer(NetBoxModelSerializer):
|
||||
url = serializers.HyperlinkedIdentityField(view_name="plugins-api:netbox_documentation-api:documentassignment-detail")
|
||||
|
||||
class Meta:
|
||||
model = DocumentAssignment
|
||||
fields = ("id", "url", "display", "document", "assigned_object_type", "assigned_object_id", "note", "tags", "created", "last_updated")
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
from netbox.api.routers import NetBoxRouter
|
||||
from . import views
|
||||
|
||||
router = NetBoxRouter()
|
||||
router.register("documents", views.DocumentViewSet)
|
||||
router.register("assignments", views.DocumentAssignmentViewSet)
|
||||
urlpatterns = router.urls
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
from netbox.api.viewsets import NetBoxModelViewSet
|
||||
from ..filtersets import DocumentFilterSet, AssignmentFilterSet
|
||||
from ..models import Document, DocumentAssignment
|
||||
from .serializers import DocumentSerializer, DocumentAssignmentSerializer
|
||||
|
||||
|
||||
class DocumentViewSet(NetBoxModelViewSet):
|
||||
queryset = Document.objects.all()
|
||||
serializer_class = DocumentSerializer
|
||||
filterset_class = DocumentFilterSet
|
||||
|
||||
|
||||
class DocumentAssignmentViewSet(NetBoxModelViewSet):
|
||||
queryset = DocumentAssignment.objects.all()
|
||||
serializer_class = DocumentAssignmentSerializer
|
||||
filterset_class = AssignmentFilterSet
|
||||
|
||||
Reference in New Issue
Block a user