如何在flask-sqlalchemy中检索包含多个单词的模型?以下引发错误:
class Child(Model):
id = Column(Integer, primary_key=True)
user_id = Column(Integer, ForeignKey('user.id'))
parent_one_id = Column(Integer, ForeignKey('parent_one.id'))
class ParentOne(Model):
id = Column(Integer, primary_key=True)
children = relationship('Child', backref='child.id', lazy='dynamic')
查看数据库,我看到的parent_one
是各个模型的表名。
尝试结识父母:
c = Child.query.filter_by(id=1).first()
print c.user.id # Works
print c.parent_one.id # Fails
我得到:
AttributeError: 'Child' object has no attribute 'parent_one'
它没有parent_one
属性,因为您没有做任何事情来创建一个属性。从添加一个关系Child
到ParentOne
叫parent_one
,或反向做了backref
命名parent_one
。
# in Child
parent_one = relationship('ParentOne', backref='children')
# or in ParentOne
children = relationship(Child, backref='parent_one')
还要注意,您定义的关系具有无效的backref名称(child.id
不是有效的Python变量名称)。你似乎混淆了backref
与ForeignKey
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句