mirror of
https://github.com/netbox-community/netbox.git
synced 2026-03-25 02:41:43 +01:00
* Add message field to ObjectChange model * Set max length on changelog message * Enable changelog messages for single object operations * Fix tests * Add changelog message support for bulk edit & bulk delete * Cosmetic improvements to form fields * Fix bulk operation templates * Add message support for bulk import/update * Add REST API support for changelog messages (WIP) * Fix changelog_message assignment * Enable changelog message support for bulk deletions * Add documentation * Fix changelog message support for VirtualChassis * Add ChangeLoggingMixin to necesssary model forms * Introduce get_random_string() utility function for tests * Incorporate changelog messages for object view tests * Incorporate changelog messages for object bulk view tests * Add missing mixins for changelog message support * Tweak test to generate expected number of change records * Finish adding tests for changelog message functionality * Misc cleanup * Fixes #19956: Prevent duplicate deletion records from cascading deletions * Tweak bulk deletion test to work around cascading deletions issue * Correct API URL
29 lines
1.0 KiB
Python
29 lines
1.0 KiB
Python
from core.api.serializers_.data import DataFileSerializer, DataSourceSerializer
|
|
from extras.models import ConfigTemplate
|
|
from netbox.api.serializers import ChangeLogMessageSerializer, ValidatedModelSerializer
|
|
from netbox.api.serializers.features import TaggableModelSerializer
|
|
|
|
__all__ = (
|
|
'ConfigTemplateSerializer',
|
|
)
|
|
|
|
|
|
class ConfigTemplateSerializer(ChangeLogMessageSerializer, TaggableModelSerializer, ValidatedModelSerializer):
|
|
data_source = DataSourceSerializer(
|
|
nested=True,
|
|
required=False
|
|
)
|
|
data_file = DataFileSerializer(
|
|
nested=True,
|
|
required=False
|
|
)
|
|
|
|
class Meta:
|
|
model = ConfigTemplate
|
|
fields = [
|
|
'id', 'url', 'display_url', 'display', 'name', 'description', 'environment_params', 'template_code',
|
|
'mime_type', 'file_name', 'file_extension', 'as_attachment', 'data_source', 'data_path', 'data_file',
|
|
'data_synced', 'tags', 'created', 'last_updated',
|
|
]
|
|
brief_fields = ('id', 'url', 'display', 'name', 'description')
|