[점프 투 FastAPI] 모델에서 테이블 정의 방법 차이 문의드립니다.

안녕하세요.
모델에서 테이블을 정의할 때, 책에서 보면 두가지가 있는 것 같습니다.

초반에는 아래와 같이 모델을이 만들어졌습니다.

class Question(Base):
    __tablename__ = "question"

    id = Column(Integer, primary_key=True)
    subject = Column(String, nullable=False)
    content = Column(Text, nullable=False)
    create_date = Column(DateTime, nullable=False)

3.12 추천에서는 ManyToMany에서는 테이블 모델 생성 방법이 달라졌습니다.

question_voter = Table(
    'question_voter',
    Base.metadata,
    Column('user_id', Integer, ForeignKey('user.id'), primary_key=True),
    Column('question_id', Integer, ForeignKey('question.id'), primary_key=True)
)

방법에 차이가 있는 것인지요?
아니면 모델을 만드는 여러가지 방법이 있어서 알려주는 건가요?

질문 드립니다.
감사합니다.

capvirus 383

2023년 3월 28일 1:46 오후

목록으로
1개의 답변이 있습니다. 1 / 1 Page

manytomany의 구조를 갖는 테이블을 만들기 위한 SQLAlchemy의 규칙정도로 이해하시면 좋을것 같습니다. 자세한 내용은 다음의 URL을 참고해 주세요.

https://docs.sqlalchemy.org/en/20/orm/basic_relationships.html#many-to-many

박응용

2023년 3월 28일 6:45 오후