1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Finished merging writable serializers

This commit is contained in:
Jeremy Stretch
2018-04-05 14:12:43 -04:00
parent 7241783249
commit 821fb1e01e
9 changed files with 105 additions and 230 deletions

View File

@@ -5,7 +5,7 @@ from rest_framework.validators import UniqueTogetherValidator
from dcim.api.serializers import NestedDeviceSerializer
from secrets.models import Secret, SecretRole
from utilities.api import ValidatedModelSerializer
from utilities.api import ValidatedModelSerializer, WritableNestedSerializer
#
@@ -19,7 +19,7 @@ class SecretRoleSerializer(ValidatedModelSerializer):
fields = ['id', 'name', 'slug']
class NestedSecretRoleSerializer(serializers.ModelSerializer):
class NestedSecretRoleSerializer(WritableNestedSerializer):
url = serializers.HyperlinkedIdentityField(view_name='secrets-api:secretrole-detail')
class Meta:
@@ -31,16 +31,9 @@ class NestedSecretRoleSerializer(serializers.ModelSerializer):
# Secrets
#
class SecretSerializer(serializers.ModelSerializer):
class SecretSerializer(ValidatedModelSerializer):
device = NestedDeviceSerializer()
role = NestedSecretRoleSerializer()
class Meta:
model = Secret
fields = ['id', 'device', 'role', 'name', 'plaintext', 'hash', 'created', 'last_updated']
class WritableSecretSerializer(serializers.ModelSerializer):
plaintext = serializers.CharField()
class Meta:
@@ -64,6 +57,6 @@ class WritableSecretSerializer(serializers.ModelSerializer):
validator(data)
# Enforce model validation
super(WritableSecretSerializer, self).validate(data)
super(SecretSerializer, self).validate(data)
return data

View File

@@ -51,7 +51,6 @@ class SecretViewSet(ModelViewSet):
'role__users', 'role__groups',
)
serializer_class = serializers.SecretSerializer
write_serializer_class = serializers.WritableSecretSerializer
filter_class = filters.SecretFilter
master_key = None