PostgreSQL에서 DateTime을 한국 시간(KST) 기준으로 다루는 방법

Next.js + FastAPI + PostgreSQL 환경에서 안전하게 한국 시간(KST)을 다루는 법 🔍 들어가며 애플리케이션을 개발하다보면 모든 데이터의 기준 시간을 어떻게 관리하는 게 좋을지 고민이 생깁니다.이번 글에서는 PostgreSQL의 2가지 데이터 타입에 대해서 알아보고, 한국에서만 운영되는 서비스의 경우와 글로벌 서비스를 고려한 DateTime을 다루는 방법을 다뤄보겠습니다. 🧩 기본 모델 구조 위 예시처럼 created_at, updated_at, deposit_date 등 datetime 필드가 … 더 읽기

테이블을 꼭 FK(ForeignKey)로 연결하는게 좋을까?

“모든 테이블을 ForeignKey로 연결해야 할까?”저는 자산앱의 데이터베이스 모델링을 하면서 테이블이 늘어나고 관계가 복잡해질수록 이런 질문이 생기기 시작했습니다.특히 FastAPI와 PostgreSQL 환경에서 SQLModel/SQLAlchemy 같은 ORM을 쓰면, 설계 결정이 코드와 런타임 동작에 직접적인 영향을 미치기 때문에 고민이 더 자주 발생하죠.이번 글에서는 실제 예제 코드를 기반으로, FK를 사용하는 이유와 사용하지 않았을 때의 차이점, 그리고 어떤 상황에서 FK를 의도적으로 생략하는 … 더 읽기

FastAPI에서 모델 변경사항을 테이블에 반영하는 방법

FastAPI 프로젝트를 운영하다 보면 데이터베이스 모델을 수정해야 하는 경우가 자주 발생합니다.특히 프로젝트가 커질수록 모델 정의(models.py) 와 실제 테이블 구조(DB Schema) 간의 불일치를 방지하는 것이 중요합니다.이번 글에서는 자산 앱 프로젝트의 모델링(ERD) 구조를 예시로, Alembic 마이그레이션 도구를 사용해 일부 테이블에만 존재하던 created_at, updated_at 필드를 모델에 추가 정의하고 테이블에 반영하는 방법을 정리해보겠습니다. 💡 문제 상황: 모델은 바뀌었는데 테이블은 … 더 읽기

FastAPI에서 모델(Model)과 스키마(Schema)의 분리

유지보수성 향상, 데이터 검증 및 보안강화를 위해 FastAPI와 SQLModel을 함께 사용하면 데이터베이스 테이블 정의(모델)와 API 요청/응답 검증(스키마)을 분리할 수 있습니다.이번 포스팅에서는 FastAPI + SQLModel + PostgreSQL(Docker) 환경을 기반으로, 스키마(Schema)에서 받은 데이터를 안전하게 모델(Model)로 변환하여 저장하는 방법을 구체적인 코드 예시와 함께 살펴보겠습니다. 🧭 개발 환경 📂 프로젝트 구조 위 구조는 FastAPI 백엔드에서 모델과 스키마를 완전히 분리하는 … 더 읽기

FastAPI CRUD API 구현 및 Swagger UI를 활용한 테스트

웹 애플리케이션에서 CRUD(Create, Read, Update, Delete) 기능은 백엔드 개발의 핵심입니다.이번 글에서는 FastAPI와 SQLModel을 활용해 자산(Asset) 모델을 예시로 CRUD API를 만들고, PostgreSQL 데이터베이스와 연동하며, Swagger UI에서 API를 테스트하는 방법까지 단계별로 안내합니다. 🧩 참고이번 글에서는 FastAPI를 활용한 CRUD API 구현에 초점을 맞추었기 때문에, 데이터베이스 테이블 모델링에 대한 내용은 다루지 않았습니다.모델 설계와 관계 설정 등은 추후 별도의 포스팅에서 … 더 읽기

AI와 함께하는 풀스택 개발 | Next.js + FastAPI + PostgreSQL 기반의 자산 관리 앱 개발기

🧭 프로젝트 개요 안녕하세요. 이 블로그는 개발자로서 한 단계 더 성장하기 위한 저만의 기록을 담고 있습니다.이번 프로젝트는 단순한 결과물보다 과정 중심의 학습에 초점을 맞추고 있으며, AI와 함께하는 개발(Vibe Coding) 방식을 통해 스스로 성장해 나가는 여정을 기록하고자 합니다. 저는 해당 기술 스택(Next.js, FastAPI, PostgreSQL 등)에 대해 처음 배우는 단계로, ChatGPT, Github Copilot과 같은 AI 도구를 적극 … 더 읽기