2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-04-29 12:06:44 +00:00

Handle case where serializer does not have 'Meta' class (#7360)

This commit is contained in:
Oliver 2024-05-28 00:34:59 +10:00 committed by GitHub
parent b7b666b7f0
commit eb3c8dd255
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 28 additions and 7 deletions

View File

@ -147,6 +147,7 @@ class InvenTreeMetadata(SimpleMetadata):
serializer_info = super().get_serializer_info(serializer)
# Look for any dynamic fields which were not available when the serializer was instantiated
if hasattr(serializer, 'Meta'):
for field_name in serializer.Meta.fields:
if field_name in serializer_info:
# Already know about this one

View File

@ -150,6 +150,11 @@ class PluginConfigEmptySerializer(serializers.Serializer):
class PluginReloadSerializer(serializers.Serializer):
"""Serializer for remotely forcing plugin registry reload."""
class Meta:
"""Meta for serializer."""
fields = ['full_reload', 'force_reload', 'collect_plugins']
full_reload = serializers.BooleanField(
required=False,
default=False,
@ -189,6 +194,11 @@ class PluginActivateSerializer(serializers.Serializer):
model = PluginConfig
class Meta:
"""Metaclass for serializer."""
fields = ['active']
active = serializers.BooleanField(
required=False,
default=True,
@ -213,6 +223,11 @@ class PluginActivateSerializer(serializers.Serializer):
class PluginUninstallSerializer(serializers.Serializer):
"""Serializer for uninstalling a plugin."""
class Meta:
"""Metaclass for serializer."""
fields = ['delete_config']
delete_config = serializers.BooleanField(
required=False,
default=True,
@ -253,6 +268,11 @@ class NotificationUserSettingSerializer(GenericReferencedSettingSerializer):
class PluginRegistryErrorSerializer(serializers.Serializer):
"""Serializer for a plugin registry error."""
class Meta:
"""Meta for serializer."""
fields = ['stage', 'name', 'message']
stage = serializers.CharField()
name = serializers.CharField()
message = serializers.CharField()