fastapi(9)
-
fastAPI 세션3(ORM)
ORM(Object Relational Mapping)은 파이썬 객체와 관계형 데이터베이스의 테이블을 매핑해주는 기술로, SQL을 직접 작성하지 않고도 파이썬 코드로 데이터를 조회, 추가, 수정, 삭제할 수 있게 해준다. SQLAlchemy에서는 Session을 통해 데이터베이스와의 연결 및 트랜잭션을 관리한다.데이터를 생성하거나 수정할 때는 아래와 같이 사용한다: session.add(todo) # 새 객체를 세션에 추가session.commit() # 변경 내용을 DB에 반영session.refresh(todo) # DB에서 다시 읽어 반영된 값을 객체에 채움return todo 삭제할 때는 SQLAlchemy의 delete() 함수를 사용하여 쿼리를 생성하고 실행한다:def d..
2025.07.26 -
인프런 강의 fastAPI 섹션 2 정리
FastAPI의 장점1. 빠르고 간결한 비동기 Python 웹 프레임워크2. 타입 힌트를 활용한 코드 작성 Pydantic 기반의 데이터 검증과 이를 통한 자동 Swagger 문서 생성 3. 구조가 유연하고, 비동기 처리가 간편 FastAPI는 클라이언트-서버 모델에서 사용됨URL을 통해 자원의 위치를 표현하고, GET, POST, PATCH, DELETE 등의 메서드를 통해 다양한 동작을 정의한다. API는 리모컨처럼 내부 동작을 몰라도 사용할 수 있도록 해주는 장치다. 사용자는 URL로 요청을 보내면, 서버는 그에 맞는 처리를 한 뒤 응답을 반환한다. HTTP 상태코드는 주요히 200번대(성공), 400번대(클라이언트 오류), 500번대(서버 오류)로 나뉘며, 예시는 다음과 같다:200 OK: 요청 ..
2025.07.26 -
FastAPI(planner 코드리뷰 src.routes.events)
코드 리뷰from fastapi import APIRouter # 라우팅을 모듈화 하기 위해 사용하는 클래스from src.models.events import Event, EventUpdatefrom src.database.connection import Databaseevent_router = APIRouter( prefix ="/events", tags=["Events"] )event_db = Database(Event) # 다른 모듈에서 정의한 함수와 인자 (models.events.py, database.connection.py)@event_router.get("/", response_model=list[EVENT]) # 이 API(메뉴판)를 서버가(응답) 리스트의 형태로 데이..
2025.05.02 -
데이터베이스 기초 이해하기
보호되어 있는 글입니다.
2025.04.10 -
라우팅과 Pydantic
보호되어 있는 글입니다.
2025.04.10 -
FastAPI(response_model)
response_model VS Type HintFastAPI에서 응답을 정의하는 방법에는 두 가지 주요 방식이 있다.데코레이터에서 response_model을 사용 (ex. @app.get("/tags/{id}", response_model=TagOut) )FastAPI에게 "이 구조로 응답해!"라고 알려줌반환 타입을 Type Hint로 지정 (ex. def get_tag(id: int) -> TagOut: )개발자끼리 "이 함수는 이런 걸 리턴할 거야"라고 표시1. 차이점비교 항목response_model(데코레이터 사용)반환 타입 힌트( -> Model)역할응답 데이터 필터링 및 변환개발자가 의도한 반환타입 지정필드 자동 필터링가능(secret 같은 필드 숨김)불가능데이터 변환FastAPI 내부..
2025.04.02