【发布时间】:2020-09-07 02:39:14
【问题描述】:
阅读以下页面,我可以看到我可以使用 orm relationship() 函数设置表之间的关系。
https://docs.sqlalchemy.org/en/13/orm/basic_relationships.html
https://docs.sqlalchemy.org/en/13/orm/backref.html#relationships-backref
使用这个例子:
class User(Base):
__tablename__ = 'user'
id = Column(Integer, primary_key=True)
name = Column(String)
addresses = relationship("Address", backref="user")
class Address(Base):
__tablename__ = 'address'
id = Column(Integer, primary_key=True)
email = Column(String)
user_id = Column(Integer, ForeignKey('user.id'))
我是否需要为 Address 类提供明确的 user_id = Column(Integer, ForeignKey('user.id')) 语句?
relationship(backref=...) 是 User 不会提供 Address.user 属性吗?
如果Address 中需要ForeignKey 列,那么为什么User 中不需要它?
【问题讨论】:
标签: sqlalchemy