我正在sqlalchemy
中研究python
。我已经使用mapper
为数据库中的一个表(用户)定义了四个对象。假设这些对象是a,b,c,d
。我已将它们添加到session
。然后,我查询了用户名为a
(对象a)。然后,我使用了如下的for
循环
Sessionclass = session_maker()
session = Sessionclass()
session.add_all([a,b,c,d])
res = session.query(User).filter_by(username='a').first()
for obj in session:
print(obj)
我将输出作为对象“ a”。为什么其他obj不能打印?
答案 0 :(得分:0)
基本上,据我了解,您正在尝试显示session
中存在的所有对象,而不管您指定的以下查询是什么。
res = session.query(User).filter_by(username='a').first()
因此,在for
循环中,仅直接提供session
不会使其迭代,我们必须查询user
中存在的表(session
)
Sessionclass = session_maker()
session = Sessionclass()
session.add_all([a,b,c,d])
for obj in session.query(User):
print(obj)