전체 글
-
SQLAlchemy ORM 특징Python/Today 2025. 8. 22. 09:30
구분 설명ORM(Object Relational Mapping)파이썬 객체와 데이터베이스 테이블을 매핑하여 SQL 대신 객체 지향적으로 DB 조작 가능데이터베이스 독립성SQLite, PostgreSQL, MySQL, Oracle 등 다양한 DB 엔진을 지원하며 코드 변경 최소화세션(Session) 기반 관리DB 연결, 트랜잭션, 객체 상태(Transient, Pending, Persistent, Detached)를 세션에서 관리쿼리 빌더(Query Builder)스타일: 2.0 권장 스타일 사용 — select()/insert()/update()/delete() + session.execute(stmt) (과거 session.query()는 레거시).표현식 구성: 컬럼·연산자·함수를 조합해 SQL을 파이..
-
DependsDocker/Today 2025. 8. 20. 17:04
특징 설명정의API 함수가 실행되기 전, 다른 함수를 먼저 실행시켜 그 결과를 주입하라고 FastAPI에 알려주는 지시서핵심 개념의존성 주입 (Dependency Injection, DI)작동 순서Depends 발견( Depends(함수명) 으로 엔드포인트에 선언 → 의존성 함수 먼저 실행 → 결과값 주입 → API 본 함수 실행주요 장점코드 중복 제거, 관심사 분리(코드 깔끔), 자동화(에러 처리·자원 해제)주요 특징제어의 역전 (IoC) : 개발자가 아닌 **프레임워크(FastAPI)**가 코드 실행 흐름을 제어사용 예시데이터베이스 세션 관리, 사용자 인증 및 인가 간단하게 함수 실행전에 실행되야하는 함수를 먼저 실행하고 결과를 함수에 주입하는 것DB 세션 , 사용자 인가 등등
-
python 정리 #3(app/crud/user_crud.py)Python/Today 2025. 7. 8. 13:41
# SQLAlchemy Session 타입 임포트from sqlalchemy.orm import Session# User ORM 모델 임포트from db.another_db.models import User# 회원가입 요청 검증용 Pydantic 모델 임포트from schemas.requests.user_create import UserCreate# ─────────────────────────────────────────────────────────────# 신규 사용자 생성 함수 (CRUD)# ─────────────────────────────────────────────────────────────def create_user( db: Session, # SQLAlchemy ..
-
python 정리 #2(routers/router.py)Python/Today 2025. 7. 8. 10:50
# FastAPI의 APIRouter 클래스 임포트from fastapi import APIRouter# 웹 관련 라우트 모듈 전체 임포트from .routes.web import *# 웹 모듈 중 user 서브모듈만 별칭(web_user)으로 임포트from .routes.web import user as web_user# ─────────────────────────────────────────────────────────────────────────────# 메인 API 라우터 인스턴스 생성# ─────────────────────────────────────────────────────────────────────────────api_router = APIRouter()# ──────────────..
-
python 정리 #1(routers/user.py)Python/Today 2025. 7. 8. 10:48
# FastAPI, 의존성 주입, HTTP 예외 처리용 클래스 임포트from fastapi import APIRouter, Depends, HTTPException# SQLAlchemy 세션 타입 임포트from sqlalchemy.orm import Session# DB 세션 제공 함수(get_db) 임포트from db.another_db.mariaDB import get_db# 요청 본문 검증용 Pydantic 모델(UserCreate) 임포트from schemas.requests.user_create import UserCreate# 실제 사용자 생성 로직(create_user) 임포트from crud.user.user_crud import create_user# ────────────────────..
-
Docker SSL인증서Docker/Today 2025. 7. 2. 14:03
https://blog.ovmkas.co.kr/115 SSL 인증서1. Window Powershell 관리자 권환으로 실행2. Get-ExecutionPolicy 입력Restricted가 아닐 경우 Set-ExecutionPolicy AllSigned 실행 후 Y 입력3. Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::Secblog.ovmkas.co.kr기존과 동일하게 SSL인증서를 받은 뒤프로젝트 파일 안에 넣어둔다프로젝트 파일 - docker(폴더생성)1. SSL.PEM2. SSLKEY.PEM3. vhost-ssl.conf (파일생성) vhost-ssl.conf ServerN..