Jos*_*ein 8 html python flask flask-wtforms
好的,所以我是新手,想知道我会用什么对象或工具来做这件事.我想创建一个表单,用户输入一些文本,单击提交按钮,然后他们提交的文本绑定为python字符串,并在其上运行一个函数,然后将该文本发布回Web他们正在查看的页面,其中包含该功能的返回值.这是一个例子:
HTML格式:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action = "/" method="get">
<input type="text" name="mail" size="25">
<input type="submit" value="Submit">
</form>
<textarea cols="50" rows="4" name="result"></textarea>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
那么这就是我认为应该是url函数的样子
@app.route('/', methods=['GET', 'POST'])
def form():
if request.method == 'GET':
input_text = request.data #step to bind form text to python string
new_text = textfunction(input_text) #running the function on the retrieved test.
return (new_text) # no idea if this is write, but returns text after modification.
Run Code Online (Sandbox Code Playgroud)
设置它的最佳方法是什么?将变量作为输入html的值是否正确?需要一些帮助.
小智 10
基本上,您要做的是在模板中有一个块,只有在变量设置了值时才包含该块.请参阅以下示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action = "/" method="get">
<input type="text" name="mail" size="25">
<input type="submit" value="Submit">
</form>
{% if result %}
<textarea cols="50" rows="4" name="result">{{ result }}</textarea>
{% endif %}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
然后在你的python代码中
@app.route('/', methods=['GET', 'POST'])
def index(result=None):
if request.args.get('mail', None):
result = process_text(request.args['mail'])
return render_template('index.html', result=result)
def process_text(text):
return "FOO" + text
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4673 次 |
| 最近记录: |