当前位置: 首页 > 面试题库 >

使用wtforms SelectField从表单获取选定的文本

淳于鹏
2023-03-14
问题内容

这是有关使用的问题wtforms SelectField。

表单提交后,我希望提取选定的文本。

我有以下表格:

from wtforms import Form, SelectField
class TestForm(Form):
     hour = SelectField(u'Hour', choices=[('1', '8am'), ('2', '10am') ])

这是视图:

@app.route('/', methods=['GET', 'POST'])
def test_create():
form =TestForm(request.form)
if request.method == 'POST' and form.validate():
    test = Test()
    form.populate_obj(test)
    test.hour=form.hour.name
    db.session.add(test)
    db.session.commit()
    return redirect(url_for('test_create'))
return render_template('test/edit.html', form=form)

通过test.hour=form.hour.name我获得属性name(毫不奇怪…),同时我需要文本(假设8am是否选择了第一个选项)。

这怎么可能呢?感谢你的提示。


问题答案:

以以下形式全局定义选择:

HOUR_CHOICES = [('1', '8am'), ('2', '10am')]

class TestForm(Form):
     hour = SelectField(u'Hour', choices=HOUR_CHOICES)

从表格导入,将其转换为字典:

from .forms import HOUR_CHOICES

hour_display = dict(HOUR_CHOICES).get(form.hour.data)


 类似资料:
  • 问题内容: 如何从jQuery 的下拉列表 中获取选定的文本(而不是选定的值)? 问题答案:

  • 问题内容: 我有一个这样的下拉列表: 如何使用JavaScript获取实际的选项文本而不是值?我可以通过以下方式获得价值: 但不是我想要的。 问题答案: 尝试选项

  • 我正在尝试获取用户在TextView中选择的文本,我不想使用来允许我的用户复制/粘贴操作

  • 问题内容: 我有我的选择列表组件呈现我的选择列表: 我在组件上有一个方法可以创建选项: 我的onChange方法适用于以下值: 有没有办法我可以获取选项文本?这给我不确定 问题答案: 这样的事情应该做 这是一个演示 http://jsbin.com/vumune/4/

  • 问题内容: 我有一段代码,其中一个包含三个s 。我想设置的,将显示的值的。但是,到目前为止我没有得到任何结果。如何获得的值并在中显示Toast?预先谢谢你,这是我的代码: XML档案: 问题答案: 经过测试和工作。检查一下 XML文件

  • 我使用hibernate进行数据库通信。我有一个类: 现在我想用它的主键来获取这个对象,但是这个对象应该只有特定的列? 我尝试使用标准和投影,它返回一个结果,但它没有映射到我期望的对象(Person Object) 任何想法如何解决这个问题使用Hibernate查询/标准? 谢谢