有谁知道为什么这个查询只显示来自Stadium的stadium_name而不是所有的Fixture?
@app.route('/fixtures/', methods=['GET'])
@login_required
def fixtures():
fixtures = db.session.query(Fixture,Stadium.stadium_name).join(Stadium)\
.filter(Fixture.stadium_id==Stadium.id).order_by(desc(Fixture.fixture_dt))
return render_template('fixtures.html', fixtures = fixtures) #refer to template
答案 0 :(得分:1)
看起来您的查询可能过于复杂。 SQLAlchemy将使用数据模型中的关系,只要您正确设置它们即可。我猜你有一个一对多的Stadium to Fixture模型,所以你应该可以这样做:
fixtures = Fixture.query.join(Stadium).order_by(desc(Fixture.fixture_dt))
然后,在HTML文件中,您可以使用点分表示法访问字段:
{% for f in fixtures %}
<td>{{ f.name }}</td><td>{{ f.stadium.stadium_name }}</td>
{% endfor %}
在这里,我假设您已经设置了与one-to-many示例类似的关系。体育馆&#39;是从灯具到体育场的背光。