【发布时间】:2021-01-08 16:00:33
【问题描述】:
我正在尝试在 python 中使用 Flask 创建一个简单的表单。我正在尝试使用 jinja2 模板来显示表单。但是模板对象并没有创建相应的 html 元素,只是将表单字段对象打印为文本。
这是烧瓶代码块
from flask import Flask
from flask import render_template
from flask_wtf import FlaskForm
from wtforms import IntegerField
app = Flask(__name__)
class TestForm():
value = IntegerField('Value')
@app.route('/', methods = ['GET', 'POST'])
def test():
form = TestForm()
return render_template('template.html', form = form)
这是我的html模板
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
</head>
<body>
<p>Test Page !!</p>
<div>
<form method="post">
{{ form.csrf_token }}
{{ form.value.label }}
{{ form.value }}
<input type="submit">
</form>
</div>
</body>
</html>
网页是这样的
我不确定为什么表单对应的 html 元素没有显示。知道为什么会发生这种情况。我正在尝试在 anaconda python 环境中的 Windows 上运行它。我以前在 ubuntu 上没有遇到过问题。
【问题讨论】:
-
查看这个问题/答案。它可能需要处理您的 wtforms 版本,或者您如何呈现表单:stackoverflow.com/questions/16406496/…
标签: python html flask jinja2 flask-wtforms