33 lines
901 B
Python
33 lines
901 B
Python
from rest_framework import serializers
|
|
|
|
from .models import User, FriendRequest, Invitation
|
|
|
|
|
|
class UserSerializer(serializers.ModelSerializer):
|
|
count_torrent = serializers.IntegerField(read_only=True)
|
|
|
|
class Meta:
|
|
model = User
|
|
fields = ["id", "username", "count_torrent"]
|
|
|
|
|
|
class FriendRequestSerializer(serializers.ModelSerializer):
|
|
username = serializers.CharField(source="sender.username")
|
|
|
|
class Meta:
|
|
model = FriendRequest
|
|
fields = ["id", "username"]
|
|
|
|
|
|
class InvitationSerializer(serializers.ModelSerializer):
|
|
created_by = serializers.PrimaryKeyRelatedField(
|
|
default=serializers.CurrentUserDefault(),
|
|
queryset=User.objects.all(),
|
|
)
|
|
created_by_obj = UserSerializer(read_only=True, source="created_by")
|
|
url = serializers.URLField(read_only=True)
|
|
|
|
class Meta:
|
|
model = Invitation
|
|
fields = "__all__"
|