From 401d4d8385262c99991f3e42c2e25970d1ab1215 Mon Sep 17 00:00:00 2001 From: Alix JEUDI--LEMOINE Date: Mon, 25 Nov 2024 11:01:56 +0100 Subject: [PATCH] :alembic: Modifying data serializers to return the right information --- app/serializers/friend_serializer.py | 27 +++++++++++++++++++++++---- app/serializers/user_serializer.py | 13 ++++++++++++- 2 files changed, 35 insertions(+), 5 deletions(-) diff --git a/app/serializers/friend_serializer.py b/app/serializers/friend_serializer.py index 314a796..fb832e9 100644 --- a/app/serializers/friend_serializer.py +++ b/app/serializers/friend_serializer.py @@ -1,8 +1,27 @@ -def friends_serialize(friends: list) -> list: - serialized_friends: list = [] +def friends_serialize(friends: list, external_friends: list) -> dict: + serialized_friends: dict = { + 'friends': [], + 'external_friends': [] + } + for friend in friends: - serialized_friends.append({ + status = friend.status if hasattr(friend, 'status') else 'null' + + serialized_friends["friends"].append({ "id": str(friend["_id"]), - "user_id": friend["user_id"] + "user_id": friend["user_id"], + "friend_user_id": friend["friend_user_id"], + "status": status }) + + for external_friend in external_friends: + status = external_friend.status if external_friend.status else 'null' + + serialized_friends["external_friends"].append({ + "id": str(external_friend["_id"]), + "user_id": external_friend["user_id"], + "friend_user_id": external_friend["friend_user_id"], + "status": status + }) + return serialized_friends \ No newline at end of file diff --git a/app/serializers/user_serializer.py b/app/serializers/user_serializer.py index 0dd5a55..e1b01ee 100644 --- a/app/serializers/user_serializer.py +++ b/app/serializers/user_serializer.py @@ -1,3 +1,6 @@ +from app.models.user import User + + def users_serialize(users: list) -> list: serialized_users: list = [] for user in users: @@ -5,4 +8,12 @@ def users_serialize(users: list) -> list: "id": str(user["_id"]), "username": user["username"] }) - return serialized_users \ No newline at end of file + return serialized_users + +def user_serialize(user) -> User: + print(user) + return User( + _id=str(user['_id']), + username=user['username'], + password=user['password'] + ) \ No newline at end of file