This repository has been archived on 2022-05-05. You can view files and clone it, but cannot push or open issues or pull requests.
userausfall/userausfall/rest_api/serializers.py

26 lines
832 B
Python
Raw Normal View History

from rest_framework import serializers
from userausfall.models import TrustBridge, User
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ["username"]
# the UniqueValidator for username prevents successful validation for existing users
extra_kwargs = {"username": {"validators": []}}
class TrustBridgeSerializer(serializers.HyperlinkedModelSerializer):
trust_giver = UserSerializer()
class Meta:
model = TrustBridge
fields = ["is_trusted", "trust_giver"]
read_only_fields = ["is_trusted"]
def update(self, instance: TrustBridge, validated_data):
instance.trust_giver, _ = User.objects.get_or_create(username=validated_data["trust_giver"]["username"])
instance.save()
return instance