Bird
0
0

You want to return a list of users from MongoDB in FastAPI, but each user's _id must be a string, not ObjectId. Which code snippet correctly does this?

hard🚀 Application Q15 of 15
FastAPI - Database Integration
You want to return a list of users from MongoDB in FastAPI, but each user's _id must be a string, not ObjectId. Which code snippet correctly does this?
Ausers = await db.users.find().to_list(100) return [{**u, '_id': str(u['_id'])} for u in users]
Busers = await db.users.find().to_list(100) return [u for u in users if str(u['_id'])]
Cusers = await db.users.find().to_list(100) return [str(u) for u in users]
Dusers = await db.users.find().to_list(100) return [u['_id'] for u in users]
Step-by-Step Solution
Solution:
  1. Step 1: Fetch users as list of dicts

    await db.users.find().to_list(100) returns list of user dicts with ObjectId _id fields.
  2. Step 2: Convert each user's _id to string

    Use list comprehension to copy each dict and replace _id with str(u['_id']).
  3. Final Answer:

    users = await db.users.find().to_list(100) return [{**u, '_id': str(u['_id'])} for u in users] -> Option A
  4. Quick Check:

    Convert ObjectId to string per user [OK]
Quick Trick: Use dict unpacking and str() on _id in list comprehension [OK]
Common Mistakes:
MISTAKES
  • Returning ObjectId directly without conversion
  • Trying to convert whole user dict to string
  • Filtering users instead of converting _id

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More FastAPI Quizzes