2
這是一個比wtforms問題更多的python問題,底部的摘要可能對通常回答純python問題的人更有意義。 當一個頁面驗證並且一個字段未通過驗證時,我設法通過使用if/else語句讓腳本保持先前輸入的值。它允許用戶看到他們被觸發驗證錯誤之前鍵入:從null表單數據中刪除空字符串,驗證失敗
if request.method == 'POST':
if form.validate_on_submit():
try:
models.insert(form)
except:
return redirect(url_for('failure'))
else:
return redirect(url_for('success'))
else:
number_of_discs = form.number_of_discs.data
number_of_parts = form.number_of_parts.data
disc_number = form.disc_number.data
tx_date = form.tx_date.data
start_time_1 = form.start_time_1.data
end_time_1 = form.end_time_1.data
start_time_2 = form.start_time_2.data
end_time_2 = (form.data.get('end_time_2', ''))
但是,如果場中的一個,然後空,並驗證錯誤被觸發第二另一正確填寫領域,空字段中的值現在顯示爲「無」。 從某種意義上說,這是設計的,因爲我希望數據庫用NULL值而不是空字符串進行更新。但是,在這一過程的這一部分 - 即表單驗證中,我希望該字段顯示爲空。
所以總結一下,我怎麼能改線:
number_of_discs = form.number_of_discs.data
使number_of_discs包含除非是空的form.number_of_discs.data的數據,在這種情況下,它應該包含一個空字符串。
尼斯一個開山鼻祖 – apprentice123