SQLAlchemy:动态加载的反向引用到另一个模块
假设我在一个模块里有一个用户(User)模型。
class User(Model):
id = Column(Integer, primary_key=True)
然后,我想在另一个模块里的帖子(Post)模型中,添加一个动态加载的多对一关系,指向用户模型。而且,我不想让用户模型的定义被这个其他模块的关系弄得很复杂。
有没有比从帖子模型外部给用户类添加一个字段更干净的方法呢?像这样?
class Post(Model):
user_id = Column(Integer, ForeignKey('user.id'))
User.posts = relationship('Post', backref='user', lazy='dynamic')
谢谢
1 个回答
15
好吧,你可以在Post模型里面定义它(见下面的代码)
class Post(Model):
user_id = Column(Integer, ForeignKey('user.id'))
user = relationship('User', backref=backref('posts', lazy='dynamic'))