0
我正在創建一個包含電子郵件,地址,州,郵政編碼和國家的表格。只有電子郵件是必填字段。其他人都沒有。然而,Flask WTForms迫使用戶從下拉菜單中選擇一個國家和一個國家。SelectField迫使我從下拉列表中選擇一個選項
州和國家都是下拉選項。
class UserForm(FlaskForm):
email = EmailField('E-Mail', validators=[InputRequired()])
address1 = StringField('Address line 1', render_kw={"placeholder": "Address line 1"})
address2 = StringField('Address line 2', render_kw={"placeholder": "Address line 2"})
city = StringField('City', render_kw={"placeholder": "City"})
state = SelectField('State', [validators.Optional()], default=None, choices=statesList(), render_kw={"placeholder": "State"})
postal_code = StringField('Postal Code', render_kw={"placeholder": "Postal Code"})
country = SelectField('Country', default=None, choices=countriesList(), coerce=str, render_kw={"placeholder": "Country"})
@app.route('/create_user', methods=['GET', 'POST'])
def createUser():
form=UserForm()
if form.validate_on_submit():
return render_template('confirm_user.html', email=form.email.data,
address1=form.address1.data,
address2=form.address2.data,
city=form.city.data,
state=form.state.data,
postal_code=form.postal_code.data,
country=form.country.data)
我甚至將狀態設置爲可選字段。這隻發生在下拉字段中。
我看了一堆StackOverflow上的帖子,但他們沒有回答這個問題。這些帖子表明,這些選擇被刪除。我需要州和國家下拉菜單可見,但用戶不需要做出選擇,如果他們不想。在這種情況下,我只會將一個空值返回給數據庫。
有人可以告訴我我該如何做到這一點嗎?
按定義選擇字段需要選擇某些內容,因此添加一個選項以表示UI中的非選項。例如'[('選擇一個州','XX'),('Arizona','AZ')'然後默認選擇一個選項。 – Doobeh