더북(TheBook)

onupdate는 ORM의 객체 데이터가 갱신될 때 호출될 파이썬 객체를 받습니다.

파이썬 예시 코드

    updated_at: datetime = Field(
        default=None,
        nullable=False,
        sa_column_kwargs = {
            "server_default": func.now(),
            "onupdate": datetime.now,
        },
    )

주의할 점은 ORM 객체 데이터 갱신은 데이터베이스에서 처리하는 것이 아니라 ORM층에서 처리한다는 것입니다. 그래서 created_atserver_default 인자로 데이터베이스를 처리하도록 테이블을 생성하는 것과 달리, updated_at은 ORM에서 데이터가 갱신할 때 지정한 호출 가능한 객체인 함수나 메서드를 인자 자체로 받습니다.

 

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.