kenken999's picture
fda
0f43f8a
raw
history blame
1.68 kB
from fastapi import FastAPI, Depends
from sqlalchemy.orm import Session
from models import User, Team
from schemas import UserCreate, UserUpdate, TeamCreate
from database import get_db
app = FastAPI()
@app.post("/users/")
def create_user(user: UserCreate, db: Session = Depends()):
db_user = User(username=user.username, password=user.password)
db.add(db_user)
db.commit()
return {"message": "User created successfully"}
@app.post("/teams/")
def create_team(team: TeamCreate, db: Session = Depends()):
db_team = Team(name=team.name)
db.add(db_team)
db.commit()
return {"message": "Team created successfully"}
@app.get("/users/")
def read_users(db: Session = Depends()):
users = db.query(User).all()
return [{"id": user.id, "username": user.username} for user in users]
@app.get("/teams/")
def read_teams(db: Session = Depends()):
teams = db.query(Team).all()
return [{"id": team.id, "name": team.name} for team in teams]
@app.get("/users/{user_id}")
def read_user(user_id: int, db: Session = Depends()):
user = db.query(User).filter(User.id == user_id).first()
if user is None:
return {"error": "User not found"}
return {"id": user.id, "username": user.username, "profile": user.profile, "tags": user.tags}
@app.put("/users/{user_id}")
def update_user(user_id: int, user: UserUpdate, db: Session = Depends()):
user_db = db.query(User).filter(User.id == user_id).first()
if user_db is None:
return {"error": "User not found"}
user_db.username = user.username
user_db.profile = user.profile
user_db.tags = user.tags
db.commit()
return {"message": "User updated successfully"}