【发布时间】:2016-08-29 20:35:32
【问题描述】:
我有无法修改的数据库,它有两个表“人”和“关系”。表“人”具有名称、ID 和父列(是/否)。表 'relation' 包含一个外键 'people.id' 代表父项,一个 'people.id' 代表它的子项。我想加入 people 表中的列,以便可以
People.query.filter_by(id='id of the parent')
获取父母的名字和孩子的名字。这是我的代码:
class People(db.model):
__tablename__ = 'people'
id = db.Column(db.integer(), primary_key=True
name = db.Column(db.String())
parent = db.Column(db.Integer()) ##0 for no 1 for yes
parent_id=db.relationship('Link',backref=db.backref('Link.parent_id')
class Link(db.Model):
_tablename__ = 'link'
parent_id=db.Column(db.Integer(),db.ForeignKey('people.id'),primary_key=True)
id = db.Column(db.Integer(), db.ForeignKey('people.id'), primary_key=True)
dateofbirth = db.Column(db.Integer())
SQLAlchemy 告诉我:
ArgumentError: relationship 'parent_id' expects a class or a mapper argument (received: <class 'sqlalchemy.sql.schema.Table'>)
如果我搞砸了,请原谅,但这是我在这里的第一个问题(也是 SQLAlchemy 的第一步)
【问题讨论】:
标签: python sqlalchemy