我有,目前的數據填充從所有球隊的數據庫queryselectfield一個wtform:通行證整數形成蟒蛇燒瓶
class PitScoutingForm(FlaskForm):
team = QuerySelectField(
query_factory=lambda: Teams.query.all(), get_label='number')
和視圖:
@app.route('/competitions/pit-scouting', methods=['GET', 'POST'])
@login_required
def pit_scouting():
form = PitScoutingForm(request.values)
form.team.choices = [(a.id, a.number) for a in
Teams.query.order_by('number')]
所有這工作正常。但球隊名單還在不斷增加相當大的,而且我想限制,顯示在此領域的當前選擇的競爭球隊,所以我改變了看法,以
@app.route('competitions/<int: comp_id>/pit-scouting', methods=['GET', 'POST'])
,但我不知道如何將視圖中的comp_id傳遞給表單,以便我可以過濾出競爭對手的ID,這樣我只能得到那些參加比賽的球隊。我看到this entry,但我不太明白解決方案。任何指針讚賞。
這似乎並沒有幫助。在默認窗體(Teams.query.all())中設置的列表似乎不會被我在視圖中所做的任何操作覆蓋。 –
這可能是因爲你在PitScoutingForm中加載了所有這些團隊。 –