我正在我的Flask应用程序中构建一个表单,并希望用户能够从菜单中选择选项。 例如: <select> <option>Banana</option> <option>Pineapple</option> </select> 我目前的“HTML”是: <form action="{{ url_for('contact') }}" method=post> {{ form.hidden_tag() }} {{ form.name.label }} {{ form.name }} {{ form.company.label }} {{ form.company }} {{ form.email.label }} {{ form.email }} {{ form.phone.label }} {{ form.phone }} {{ form.message.label }} {{ form.message }} {{ form.submit }} </form> 我这个表单的Python类是: class ContactForm(Form): partner_type = SelectField( u'Industry Type', choices = [('Software', 'software'), ('Sales', 'sales')] ) name = TextField("Name", [validators.Required("Please enter your full name.")]) email = TextField("Email", [validators.Required("Please enter a valid email i.e. you@yourdomain.com"), validators.Email()]) phone = TextField("Phone", [validators.Required("Please enter a valid phone number.")]) company = TextField("Company", [validators.Required("Please enter your company name.")]) message = TextAreaField("Message", [validators.Required("Please include a message regarding this submission.")]) submit = SubmitField("Send") 对于文本字段和提交按钮,这都是很好的,但我似乎无法弄清楚如何正确地呈现<select>选项到表单中。 我尝试按照上面的语法进行操作: {{ form.industry_type.label }} {{ form.industry_type }} 但是它没有起作用。它只是添加了标签而没有下拉选择器。是否有正确的方法将其添加到DOM中?这些选项是静态的、预设的选项,因此我要呈现的列表并不是动态或复杂的。 感谢您的帮助。我对Python非常陌生,所以我还在摸索很多东西。
你应该使用: {{ form.partner_type.label }} {{ form.partner_type }} 替代方案: {{ form.industry_type.label }} {{ form.industry_type }} 在表单中的字段名是它被分配的变量名,而不是SelectField构造函数中的标签。