SQLAlchemy`relationship`与外键有何不同?

时间:2019-01-09 05:48:11

标签: python database sqlalchemy

tutorial提供了链接两个表的示例,但是它要求用户在数据库级别(使用外键)和ORM级别(使用relationship)上链接两个表。 :

user_id = Column(Integer, ForeignKey('users.id'))
user = relationship("User", back_populates="addresses")

我了解外键,因为无论您是否使用ORM都需要外键。我不明白的是,为什么用户需要在ORM级别定义relationship。这不是重复性的工作吗? SQLAlchemy不能仅使用外键来推断表关系吗?如果在ORM级别上没有relationship,将会缺少哪些功能?

0 个答案:

没有答案