FastAPI/데이터베이스

파이참 - Refactoring

hyunai 2026. 6. 16. 22:31

메서드 이동 Refactor

  • 현재 프로젝트 구조를 보면 schema 밑에 request.py라는 파이썬 파일이 존재하고 그 파일 안에 CreateToDoRequest라는 메소드가 존재한다. 
  • 이 메소드를 만약 main.py의 파일로 옮기고 싶다면?
  • 파이참에는 편하게 파일을 옮겨주는 Refactor 기능이 있다.

사진을 보면 메서드를 더블클릭후 오른쪽 마우스를 누르면 Refactor -> Move를 눌러준다.

그리고 이렇게 원하는 파일의 경로를 입력해주고 Refactor 버튼을 눌러주게 되면

  • 사진처럼 main.py 파일에 해당 메서드가 잘 옮겨진다.
  • import도 알아서 자동으로 옮겨진다.

이름 변경 Refactor

from typing import List

from pydantic import BaseModel

# BaseModel을 상속받는 스키마 클래스
class ToDoSchema(BaseModel):
    id: int
    contents : str
    is_done: bool

    # SQL alchemy를 읽어줄 수 있도록 하기 위한 옵션
    # Pydantic에 정의한 ORM 모드라는 걸 사용 가능
    # 따라서 ToDoSchema에 SQL alchemy ORM 객체를 주면 Pydantic이 이 ORM 객체를 해석해서 맞게 변경을 해준다.
    class Config:
        from_attributes = True

# 실제로 response에 활용을 할 클래스
class ListToDoResponse(BaseModel):
    todos: List[ToDoSchema]
  • 위는 기존 코드
  • 두 클래스 간의 convention이 맞지 않는 거 같아 밑의 ListToDoResponse의 이름을 변경해주고싶다.

마찬가지로 수정하고 싶은 부분을 하이라이트 후 Refactor -> Rename

  • 그럼 사진과 같이 바뀌고 해당 부분을 바꾸고 싶은 이름으로 수정을 해준다.
  • 그럼 이 파일 뿐만 아니라 다른 파일에 있는 해당 클래스 이름도 다같이 수정이 된다.
  • 마찬가지로 import 문도 자동으로 이름이 수정된다.

'FastAPI > 데이터베이스' 카테고리의 다른 글

ORM 적용 - PATCH API  (0) 2026.06.25
ORM 적용 - POST API  (0) 2026.06.24
ORM 적용 - GET 단일 조회 API  (0) 2026.06.16
ORM 적용 - HTTP Response 처리  (1) 2026.06.14
ORM 적용 - GET 전체 조회 API / Python - Generator  (0) 2026.06.14