我找不到有关如何使用 SQLAlchemy 的声明性语法指定关系的任何适当文档。它不受支持吗?也就是说,我应该使用“传统”语法吗?
我正在寻找一种在更高级别指定关系的方法,避免与外键等混淆。我只想声明“addresses = OneToMany(Address)”并让框架处理细节。我知道Elixir 可以做到这一点,但我想知道“普通”SQLA 是否也可以做到。
谢谢你的帮助!
Joril
问问题
4108 次
2 回答
3
假设您指的是声明性插件,我要说的所有内容都通过示例记录在案:
class User(Base):
__tablename__ = 'users'
id = Column('id', Integer, primary_key=True)
addresses = relation("Address", backref="user")
class Address(Base):
__tablename__ = 'addresses'
id = Column('id', Integer, primary_key=True)
user_id = Column('user_id', Integer, ForeignKey('users.id'))
于 2008-10-30T17:37:28.440 回答
0
查看声明性文档的“配置关系”部分。没有“OneToMany”那么高,但比完全指定关系要好。
class Address(Base):
__tablename__ = 'addresses'
id = Column(Integer, primary_key=True)
email = Column(String(50))
user_id = Column(Integer, ForeignKey('users.id'))
于 2009-07-07T20:19:52.803 回答