Flask WTForms是一个用于在Flask应用程序中处理表单的扩展库。SelectField是WTForms中的一个字段类型,用于创建下拉选择框。
在Flask WTForms中,要获取当前选定项目,可以通过在视图函数中使用request.form来获取表单数据。具体步骤如下:
- 导入必要的模块和类:from flask import Flask, render_template, request
from flask_wtf import FlaskForm
from wtforms import SelectField
- 创建一个表单类,包含SelectField字段:class MyForm(FlaskForm):
my_select = SelectField('Select Option', choices=[('1', 'Option 1'), ('2', 'Option 2'), ('3', 'Option 3')])这里的choices参数用于定义下拉选择框中的选项,每个选项由一个元组表示,第一个元素是选项的值,第二个元素是选项的显示文本。
- 创建一个视图函数来处理表单提交和渲染模板:app = Flask(__name__)
app.config['SECRET_KEY'] = 'your_secret_key'
@app.route('/', methods=['GET', 'POST'])
def index():
form = MyForm()
if form.validate_on_submit():
selected_option = form.my_select.data
# 在这里可以对选定的项目进行处理
return 'Selected option: {}'.format(selected_option)
return render_template('index.html', form=form)这里的form.my_select.data可以获取到当前选定的项目的值。
- 创建一个模板文件index.html来渲染表单:<!DOCTYPE html>
<html>
<head>
<title>Flask WTForms SelectField</title>
</head>
<body>
<h1>Flask WTForms SelectField</h1>
<form method="POST" action="/">
{{ form.csrf_token }}
{{ form.my_select.label }} {{ form.my_select }}
<input type="submit" value="Submit">
</form>
</body>
</html>
这样,当用户选择一个选项并提交表单时,视图函数将获取到当前选定项目的值,并进行相应的处理。
关于Flask WTForms和SelectField的更多信息,你可以参考腾讯云的相关产品文档: