tutorial提供了链接两个表的示例,但是它要求用户在数据库级别(使用外键)和ORM级别(使用relationship
)上链接两个表。 :
user_id = Column(Integer, ForeignKey('users.id'))
user = relationship("User", back_populates="addresses")
我了解外键,因为无论您是否使用ORM都需要外键。我不明白的是,为什么用户需要在ORM级别定义relationship
。这不是重复性的工作吗? SQLAlchemy不能仅使用外键来推断表关系吗?如果在ORM级别上没有relationship
,将会缺少哪些功能?