【发布时间】:2020-06-15 21:48:49
【问题描述】:
我目前遇到一个错误,我正在使用 sql server 并尝试使用一组子项对一个简单的父项进行建模:
sqlalchemy.exc.NoForeignKeysError: 无法确定连接条件 父/子表之间的关系 Parent.children- 没有 链接这些表的外键。确保引用列 与 ForeignKey 或 ForeignKeyConstraint 相关联,或指定一个 'primaryjoin' 表达式。
我的课程设置如下:
class Parent(db.Model):
__tablename__ = "parent"
parentId = db.Column(db.Integer, primary_key=True)
parentVersion = db.Column(db.Integer, primary_key=True)
children = db.relationship('Child', backref="parent",lazy=True)
class Child(db.Model):
__tablename__ = "child"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(512), nullable=False)
parentId = db.Column(db.Integer, nullable=False)
parentVersion = db.Column(db.Integer, nullable=False)
ForeignKeyConstraint(['parentId', 'parentVersion'], ['parent.parentId', 'parent.parentVersion']
我尝试过以多种方式声明关系和外键,但总是出错,正确的方法是什么?
【问题讨论】:
标签: sql-server-2012 sqlalchemy flask-sqlalchemy