더북(TheBook)

그다음에는 ORM에서 다룰 관계를 정의합니다.

파이썬 예시 코드

class OAuthAccount(SQLModel, table=True):
    __tablename__ = "oauth_accounts"

    user_id: int = Field(foreign_key="users.id")  # ①
    user: User = Relationship()  # ②

② 코드에 있는 Relationship() 함수는 모델 간 관계 정보를 담은 RelationshipInfo 객체를 반환하는 유틸리티 함수입니다. 이 코드는 OAuthAccount 모델의 모델 필드인 user가 User 모델을 가리키도록 한 것입니다. 가리키는 기준은 user_id입니다. user_id 값이 1이면, ORM은 user_id 값이 1인 User 모델의 객체 데이터를 데이터베이스에서 가져와 OAuthAccount의 user 모델 필드에 할당합니다.

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