Sqlalchemy:.all()的目的

时间:2016-01-27 07:38:17

标签: python sqlalchemy

.all()有什么用?当以下功能

def showRestaurants():
restaurants = session.query(Restaurant)
return render_template('restaurant.html',restaurants=restaurants)

返回与此函数相同的结果

def showRestaurants():
restaurants = session.query(Restaurant).all()
return render_template('restaurant.html',restaurants=restaurants)

对于这个restaurant.html文件

<html>
<body>
<h1> Restaurants </h1>

{% for x in restaurants %}
</br>

{% endfor %}
</body>
</html>

2 个答案:

答案 0 :(得分:0)

它只是执行您的查询并返回包含结果的列表,请参阅http://docs.sqlalchemy.org/en/rel_1_0/orm/query.html#sqlalchemy.orm.query.Query.all

或者您可以手动执行查询:

session.execute(Restaurant.select())

答案 1 :(得分:0)

第一个示例返回Query对象,您可以对其应用其他方法,例如all() - 它会将Query表示的结果作为列表返回。

在给出它之前,

Query对象在每一行上起作用,而第二行在开始给它之前在所有行上起作用。