ConceptPortal-public/rsconcept/backend/apps/library/serializers/basics.py
Ivan 642a94b565
Some checks are pending
Backend CI / build (3.12) (push) Waiting to run
Frontend CI / build (22.x) (push) Waiting to run
R: restructure backend DB
Warning! This will reset database migrations. Data should be imported manually
2024-07-25 19:12:59 +03:00

33 lines
1.0 KiB
Python

''' Basic serializers that do not interact with database. '''
from rest_framework import serializers
from shared import messages as msg
from ..models import AccessPolicy, validate_location
class LocationSerializer(serializers.Serializer):
''' Serializer: Item location. '''
location = serializers.CharField(max_length=500)
def validate(self, attrs):
attrs = super().validate(attrs)
if not validate_location(attrs['location']):
raise serializers.ValidationError({
'location': msg.invalidLocation()
})
return attrs
class AccessPolicySerializer(serializers.Serializer):
''' Serializer: Constituenta renaming. '''
access_policy = serializers.CharField()
def validate(self, attrs):
attrs = super().validate(attrs)
if not attrs['access_policy'] in AccessPolicy.values:
raise serializers.ValidationError({
'access_policy': msg.invalidEnum(attrs['access_policy'])
})
return attrs