Flask textarea 到 Python Def()

JSi*_*sen 3 python flask

基本上我正在尝试做的事情:

我有一个带有 Textarea 的简单 HTML 页面来输入一堆文本,我的用例是每一行上的单个代码,如下所示:

1234
5678
1456
etc.
Run Code Online (Sandbox Code Playgroud)

理想情况下,我想将其带入 Python 并能够处理数据并返回结果。所以让我们从简单的开始,假设将每一行作为一个单独的条目,并针对一个函数运行它,在它前面添加单词“Hi”所以结果是:

Hi 1234
Hi 5678
etc.
Run Code Online (Sandbox Code Playgroud)

到目前为止,我找到了这个工作示例,但我倾向于在尝试某事时打破它。

网址:

<!DOCTYPE html>
<html lang="en">
<body>
    <h1>Enter some text</h1>
   <form action="submit" id="textform" method="post">
    <textarea name="text">Hello World!</textarea>
    <input type="submit" value="Submit">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Python:

From flask import Flask, request
app = Flask(__name__)

@app.route('/')
def main_form():
    return '<form action="submit" id="textform" method="post"><textarea name="text">Hello World!</textarea><input type="submit" value="Submit"></form>'

@app.route('/submit', methods=['POST'])
def submit_textarea():
    return "You entered: {}".format(request.form["text"])

if __name__ == '__main__':
    app.run()
Run Code Online (Sandbox Code Playgroud)

例子 :

我尝试将 textarea 提取为字符串,然后使用以下命令将其返回到页面:

x = format(request.form["text"]) 
return x
Run Code Online (Sandbox Code Playgroud)

任何帮助或指导将不胜感激!

PRM*_*reu 6

您可以使用textarea以下行访问和存储文本:

@app.route('/submit', methods=['POST'])
def submit_textarea():
    # store the given text in a variable
    text = request.form.get("text")

    # split the text to get each line in a list
    text2 = text.split('\n')

    # change the text (add 'Hi' to each new line)
    text_changed = ''.join(['<br>Hi ' + line for line in text2])
    # (i used <br> to materialize a newline in the returned value)

    return "You entered: {}".format(text_changed)
Run Code Online (Sandbox Code Playgroud)