2025-03-11 13:39:02 +00:00

29 lines
897 B
Python

from fastapi import APIRouter, Depends, File, UploadFile
from sqlalchemy.orm import Session
from typing import List
from app.db import get_db
from app.models import User
from app.schemas import UserProfile, UserProfileResponse
router = APIRouter()
@router.post("/profile", response_model=UserProfileResponse)
async def upload_profile(
files: List[UploadFile] = File(...),
user: User = Depends(get_current_user),
db: Session = Depends(get_db)
):
"""
Upload user profile picture(s)
"""
profile_pics = []
for file in files:
contents = await file.read()
profile_pic = UserProfile(name=file.filename, data=contents, user_id=user.id)
db.add(profile_pic)
db.commit()
db.refresh(profile_pic)
profile_pics.append(profile_pic)
return {"profile_pics": profile_pics, "message": "Profile picture(s) uploaded successfully"}