본문 바로가기

전체 글199

FastAPI - ToDo 서비스 기능 만들기 (1) ToDo 서비스는 할 일을 적고 수행 여부를 체크하는 서비스이다. ToDo 서비스의 기능은 다음과 같다. GET 전체 ToDo 조회 : /api/v1/todos 단일 ToDo 조회 : /api/v1/todos/{id} POST ToDo 생성 : /api/v1/todos PATCH ToDo 수정 : /api/v1/todos/{id} DELETE ToDo 삭제 : /api/v1/todos/{id} 코드는 todos의 하위 폴더로 src 폴더 내부의 main.py에 작성된다. 우선, 간단한 테스트를 해보기 위해 가상 환경을 실행하고 root path에 get 요청을 보내보자. 코드는 다음과 같다. from fastapi import FastAPI app = FastAPI() @app.get("/") def h.. 2023. 12. 29.
FastAPI - 환경 설정하기 FastAPI를 사용하여 할 일을 적고 수행여부를 체크하는 서비스를 만들어보자. FastAPI는 파이썬 프레임워크로, 파이썬 3.6 부터 제공되는 트렌디하고 높은 성능을 가졌다. FastAPI의 특징은 다음과 같다. API 문서 자동 생성 (Swagger와 ReDoc 스타일 동일) 의존성 주입 위주의 설계를 통한 DB 등에 대한 관리 편리 비동기 동작으로 빠른 성능 보장 Pydantic을 사용한 Validation 체크 뛰어난 공식문서 가이드 요구되는 환경은 다음과 같다. Python 3.10 이상 Docker MySQL 8.0 IDE : PyCharm Python 3.10, Docker, PyCharm이 설치되어있다고 가정한 상태에서 프로젝트를 생성해보자. 다음의 명령어를 통해 가상 환경을 생성, 실행.. 2023. 12. 29.
멘토님 피드백 반영 (3) & 회고 마지막 멘토님 피드백 반영 및 오픈소스 활동에 대한 회고를 해보려고 한다. [원철 멘토님 피드백] 1) 폴더 및 파일명 cloudmssql → mssql 로 변경 2) sensitive 속성 함께 추가하기 & 패스워드 validation 조건에 backtick이 빠짐 참고 : https://github.com/dusdjhyeon/terraform-provider-ncloud/commit/ba1a9bd694b1e6fe5b2381239c87e5bf809f4583​ "user_password": { Type: schema.TypeString, Required: true, Sensitive: true, ValidateDiagFunc: validation.ToDiagFunc(validation.All( valid.. 2023. 12. 7.
멘토님 피드백 반영 (2) 멘토님들께서 계속해서 피드백을 주셨다. [원철 멘토님 피드백] 1) cloud_mssql.go에서 region_code attribute 삭제하기 2) IntDivisibleBy(1433) 대신 IntBetween(1433, 1433) 이나 IntInSlice([]int{ 1433}) 또는 validation 함수를 추가하는 형태로 변경 "port": { Type: schema.TypeInt, Optional: true, ValidateDiagFunc: validation.ToDiagFunc(validation.Any( //validation. validation.IntBetween(10000, 20000), validation.IntBetween(1433, 1433), // 변경 부분 )), Descr.. 2023. 12. 7.