Source code for User.serializers

from django.contrib.auth.models import User
from django.contrib.staticfiles.templatetags.staticfiles import static

from rest_framework import serializers

from models import *
from friendship.models import Friend
from friendship.models import Follow


[docs]class UserProfilePictureSerializer(serializers.ModelSerializer):
[docs] class Meta: model = UserProfile fields = ( 'picture',)
[docs]class UserSerializer(serializers.ModelSerializer): profile = UserProfilePictureSerializer(read_only=True)
[docs] class Meta: model = User fields = ('id', 'username', 'first_name', 'last_name', 'profile')
[docs]class PictureField(serializers.Field):
[docs] def to_representation(self, obj): if obj: return obj.url else: return static('assets/img/default.jpg')
[docs]class UserProfileSerializer(serializers.ModelSerializer): user = UserSerializer(read_only=True) picture = PictureField(read_only=True)
[docs] class Meta: model = UserProfile fields = ('user', 'firstname', 'lastname', 'birthday', 'gender', 'faculty', 'major', 'types', 'country', 'city', 'picture', 'cover', 'created') read_only_fields = ('picture', 'cover')
[docs]class UserCoverSerializer(serializers.ModelSerializer):
[docs] class Meta: model = UserProfile fields = ('cover',)
[docs]class FirstUserProfileSerializer(serializers.ModelSerializer): user = UserSerializer(read_only=True)
[docs] class Meta: model = UserProfile fields = ('user', 'faculty', 'country', 'created')
[docs]class FriendShipSerializer(serializers.ModelSerializer): user = UserSerializer(source='from_user')
[docs] class Meta: model = Friend fields = ('user', 'created')