昨日、このコードがうまく動作していなかったようですが、今度はアプリケーションを実行するとUnboundLocalError: local variable 'query' referenced before assignment
エラーが発生します。私が見ることができるように、コードはリダイレクトが行われる前にクエリ変数を明確に定義しています。私は少し困惑しています。Python Flask redirect- UnboundLocalError:代入エラーの前に参照されるローカル変数
誰も問題を見ることはできますか?場合
####Index Page
@app.route('/', methods=['GET', 'POST'])
@app.route('/index', methods=['GET', 'POST'])
def index():
exception = ""
try:
connectToDB()
except:
exception = 'Failure to connect to db'
form = StaffNames()
ranumber = form.ranumber.data
if not exception:
if form.validate_on_submit():
query = {
'staff': dict(staff_choices).get(form.staff.data),
'ranumber': form.ranumber.data,
'rai_number' : columnsearch(ranumber)["rai_number"],
'carrier_format' : columnsearch(ranumber)["carrier_format"],
'physical_location' : columnsearch(ranumber)["physical_location"],
'brand_title' : columnsearch(ranumber)["brand_title"],
'recording_artist' : columnsearch(ranumber)["recording_artist"],
'producer' : columnsearch(ranumber)["producer"],
'session' : columnsearch(ranumber)["session"],
'tx_date' : columnsearch(ranumber)["tx_date"],
}
return redirect(url_for('results', **query))
return render_template(
'index.html', title='Search Page', exception=exception, form=form
)
あなたのインデントはすべての場所にあります。タブとスペースが混在していないか確認してください。 –
私はそれを修正しましたが、私はまだインデックスページを読み込むことができません。 – neilH
インデントが修正されました。かなり明確です。 'query'は' form.validate_on_submit() 'がfalseのときには定義されません。 –