diff --git a/games/serializers.py b/games/serializers.py index 2c8200c..6f5e8dd 100644 --- a/games/serializers.py +++ b/games/serializers.py @@ -9,7 +9,7 @@ from profiles.serializers import ProfileSerializer class GameSerializer(serializers.ModelSerializer): players = serializers.SerializerMethodField() - winner = serializers.ReadOnlyField() + winner = serializers.SerializerMethodField() state = serializers.SerializerMethodField() started = serializers.ReadOnlyField() finished = serializers.ReadOnlyField() @@ -28,5 +28,10 @@ class GameSerializer(serializers.ModelSerializer): return "started" return "waiting" + def get_winner(self, instance: GameModel): + if (instance.winner is None): + return None + return ProfileSerializer(instance.winner.profilemodel).data + def get_players(self, instance: GameModel): return ProfileSerializer(instance.get_players_profiles(), many=True).data