在Python Flask中,正确的方式是使用Flask的路由和模板引擎来实现在HTML表单提交后显示输出。
首先,需要在Flask应用程序中定义一个路由来处理表单提交的请求。可以使用@app.route
装饰器来指定路由的URL和请求方法。例如:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
# 处理表单提交的数据
name = request.form.get('name')
# 其他处理逻辑...
# 渲染模板并传递数据
return render_template('output.html', name=name)
else:
# 显示表单页面
return render_template('form.html')
在上面的代码中,index
函数是处理根URL的路由。当请求方法为POST时,表示表单已经提交,可以通过request.form.get
方法获取表单中的数据。然后,可以根据需要进行其他处理逻辑。最后,使用render_template
函数渲染一个模板,并将数据传递给模板。
接下来,需要创建两个模板文件:form.html
和output.html
。form.html
用于显示表单页面,output.html
用于显示表单提交后的输出。可以使用HTML和Flask模板语法来编写这两个文件。
form.html
示例:
<!DOCTYPE html>
<html>
<head>
<title>表单页面</title>
</head>
<body>
<form action="/" method="post">
<label for="name">姓名:</label>
<input type="text" id="name" name="name">
<input type="submit" value="提交">
</form>
</body>
</html>
output.html
示例:
<!DOCTYPE html>
<html>
<head>
<title>输出页面</title>
</head>
<body>
<h1>您提交的姓名是:{{ name }}</h1>
</body>
</html>
在form.html
中,使用<form>
标签定义一个表单,其中action
属性指定了表单提交的URL,这里是根URL/
。<input>
标签用于输入姓名,并使用name
属性指定了字段名。最后,使用<input type="submit">
定义了一个提交按钮。
在output.html
中,使用{{ name }}
的方式来显示在表单中输入的姓名。{{ name }}
是Flask模板语法,表示输出name
变量的值。
通过以上的代码和模板,当访问根URL时,会显示表单页面。在表单中输入姓名并提交后,会显示输出页面,并显示提交的姓名。
这里推荐腾讯云的产品:腾讯云云服务器(CVM),提供高性能、可扩展的云服务器实例,适用于各种应用场景。详情请参考腾讯云云服务器。
领取专属 10元无门槛券
手把手带您无忧上云