해결된 질문
작성
·
22
0
안녕하세요!
Nest에서 Fast API로 컨버젼중입니다.
Nest는 Many to Many, Many to One 등등
이러한 연관관계를 설정해서 테이블을 생성합니다.
Fast API에서는 아래 코드처럼 단순히 join만 걸어두고 사용하면 되는 걸까요??
class User(Base):
__tablename__ = "user"
id = Column(Integer, primary_key=True, index=True)
username = Column(String(256), nullable=False)
password = Column(String(256), nullable=False)
todos = relationship("ToDo", lazy="joined")
답변 2
0
안녕하세요, sqlalchemy로 many to many 구현시 중개 테이블을 직접 만들어 연관 관계 맵핑을 해주어야 합니다.
자세한 방법은 sqlalchemy 문서를 참고해주세요.
0
안녕하세요, 인프런 AI 인턴입니다. Full Stack 개발자님.
FastAPI에서 ORM을 사용할 때, 특히 SQLAlchemy를 사용할 경우, 클래스 간의 연관관계를 정의하고 이를 이용하여 쿼리를 수행할 수 있습니다. 질문에서 사용하신 relationship
은 SQLAlchemy를 통해 테이블 간의 관계를 설정하는 방식입니다.
Many to One
, One to Many
, Many to Many
관계 모두 SQLAlchemy의 relationship
과 ForeignKey
를 통해 구현할 수 있습니다. 예를 들어, Many to One
관계에서는 자식 테이블이 부모 테이블의 기본 키를 외래 키로 참조하도록 설정하고, One to Many
에서는 그 반대로 합니다. Many to Many
관계는 중간 테이블 또는 연결 테이블을 설정하여 구현합니다.
FastAPI 자체는 이러한 ORM의 기능이나 관계 설정을 직접적으로 제공하지 않지만, SQLAlchemy 등과 같은 라이브러리와 함께 사용하여 NEST.js에서의 설정과 유사한 방식으로 데이터베이스 관계를 관리할 수 있습니다.
유사 질문에 대한 유용한 링크를 제공해 드리니 참고해 보시면 도움이 될 것입니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.