在python 3.4中使用flask截断字符串文字

时间:2015-01-28 02:24:21

标签: python flask

当我运行以下简单的python / flask时,我没有将整个字符串传递给html页面 - 而不是"你好这是simon"我得到了#34;你好" 我正在研究Python 3.4.2

我认为它可能与编码有关,但我已经尝试了所有我能想到的编码,但仍然没有乐趣。感谢任何帮助:)

这是python文件(testit.py)

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def init_logon():
    email = "hello this is simon"
    return render_template("testit.html", email=email)

if __name__ == '__main__':
    app.debug = True
    app.run()

这是简单的模板(testit.html)

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <p>
      <label for="email">Email</label>
      <input type="text" name="email" id="email" value={{ email }}>
    </p>
</body>
</html>

来自多个浏览器的输出完全相同:文本在第一个空格处被截断

我的浏览器中显示的所有内容都是:

&#34;你好&#34; - 第一个空白区域之后的文本都没有通过

道歉我不允许发布我创建的图像:(

1 个答案:

答案 0 :(得分:3)

在HTML中,您没有引用属性值,因此模板的结果为

<input type="text" name="email" id="email" value=hello this is simon>

这意味着只有“hello”是“value”属性的值。如果查看生成页面的来源,您应该能够看到这一点。

您可以更改模板,使其具有value="{{ email }}"