我的应用程序有User
和Property
模型。我最初使用的是peeweeorm,但现在改用SQLAlchemy。我想选择当前用户列出的所有属性并在模板中显示它们。在Peewee中,迭代以下查询有效,但是我在SQLAlchemy中得到了一个ProgrammingError
。如何获取与SQLAlchemy中另一个实例相关的实例?在
my_properties = Property.query.filter_by(listed_by=current_user)
^{pr2}$
class Property(db.Model):
id = db.Column(db.Integer, primary_key=True)
listed_by = db.Column(db.Integer, db.ForeignKey('users.id'))
在Peewee中,外键字段不会将实际的键与它所表示的东西分开。在SQLAlchemy中,外键列只是键,关系用于表示它所指向的对象。在
listed_by
是一个整数。current_user
是User
对象的代理。SQLAlchemy不知道integer == User
是什么意思。在创建一个与用户对象的关系并对其进行筛选。在
^{pr2}$从技术上讲,您还可以通过传递用户的id来过滤id字段,尽管定义关系通常更有用。在
相关问题 更多 >
编程相关推荐