📡 You're offline — showing cached content
New version available!
Quick Access
Tutorials FastAPI FastAPI Full CRUD

FastAPI Full CRUD

6 min read
Write reusable CRUD functions (get, create, update, delete) with SQLAlchemy sessions.

Full CRUD with SQLAlchemy

def get_users(db: Session, skip: int = 0, limit: int = 100):
    return db.query(User).offset(skip).limit(limit).all()

def create_user(db: Session, user: UserCreate):
    db_user = User(email=user.email, hashed_password=pwd_context.hash(user.password))
    db.add(db_user); db.commit(); db.refresh(db_user)
    return db_user

def update_user(db: Session, user_id: int, data: UserUpdate):
    db_user = get_user(db, user_id)
    if not db_user: return None
    for k, v in data.model_dump(exclude_unset=True).items():
        setattr(db_user, k, v)
    db.commit(); db.refresh(db_user)
    return db_user