在文本输入标签的值属性中使用 Jinja 模板

Using Jinja Template inside the value attribute of a text input tag

我正在尝试使用 web-framework flask 设计一个网页。这是我遇到的问题的基本表现。

app.py

app = Flask(__name__)

@app.route('/')
def home():
    return render_template('main.html', value="Utkarsh Prakash") 

@app.route('/approved', methods = ['POST', 'GET'])
def approved():
    return "Done"

if __name__ == '__main__':
    app.run(debug = False, threaded=False) 

main.html

<HTML>
    <BODY>
        <FORM action = "/approved" method = "POST">
            {{value}}
            <INPUT type="text" name="text" value={{value}}>
            <INPUT type = "Submit">
        </FORM>
    </BODY>
</HTML>

我只想将我从 Flask 代码中呈现的值作为我的文本输入文件的预定义值传递。虽然 {{value}} 包含两个词“Utkarsh Prakash”,但我的输入文本字段只包含一个词,即“Utkarsh”。

enter image description here

如何在输入文本区域同时显示这两个词?

问题出在你的main.html,你没有引用属性值,所以你模板的结果是

<input type="text" name="text" value=Utkarsh Prakash>

只需更改您的模板,使其具有 value="{{ value }}"

<input type="text" name="text" value="{{ value }}">

编辑代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action = "/approved" method = "POST">
            {{value}}
            <input type="text" name="text" value="{{ value }}">
            <input type = "Submit">
        </form>
</body>
</html>

还有一点,请将所有大写 html 标签更改为小写。