fix(backend): Handle missing users in feed API gracefully
Some checks are pending
Deploy Elmeg / deploy (push) Waiting to run

This commit is contained in:
fullsizemalt 2025-12-21 01:13:07 -08:00
parent 47420b6e57
commit b879f28813

View file

@ -41,29 +41,53 @@ def get_global_feed(
for r in reviews:
user = session.get(User, r.user_id)
user_data = {"id": 0, "username": "Deleted User", "avatar": None}
if user:
user_data = {
"id": user.id,
"username": user.email.split("@")[0] if user.email else "User",
"avatar": user.avatar
}
feed_items.append(FeedItem(
type="review",
timestamp=r.created_at or datetime.utcnow(), # Handle missing created_at if any
timestamp=r.created_at or datetime.utcnow(),
data=r,
user={"id": user.id, "username": user.email.split("@")[0], "avatar": user.avatar} if user else {}
user=user_data
))
for a in attendance:
user = session.get(User, a.user_id)
user_data = {"id": 0, "username": "Deleted User", "avatar": None}
if user:
user_data = {
"id": user.id,
"username": user.email.split("@")[0] if user.email else "User",
"avatar": user.avatar
}
feed_items.append(FeedItem(
type="attendance",
timestamp=a.created_at,
data=a,
user={"id": user.id, "username": user.email.split("@")[0], "avatar": user.avatar} if user else {}
user=user_data
))
for p in posts:
user = session.get(User, p.user_id)
user_data = {"id": 0, "username": "Deleted User", "avatar": None}
if user:
user_data = {
"id": user.id,
"username": user.email.split("@")[0] if user.email else "User",
"avatar": user.avatar
}
feed_items.append(FeedItem(
type="post",
timestamp=p.created_at,
data=p,
user={"id": user.id, "username": user.email.split("@")[0], "avatar": user.avatar} if user else {}
user=user_data
))
# Sort by timestamp desc