python - 无法将 HTML 与 Flask 一起使用
问题描述
我正在尝试构建一个基本的 Flask 网络应用程序。当我尝试将简单的 html 代码(如下所示)添加到我的编辑器,然后在终端中“运行 Flask”时,它给了我“无效的语法”。我尝试了很多不同的 html 代码,但它都不喜欢其中的任何一个。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, world'
<iframe width="420" height="315"
src="https://www.youtube.com/watch?v=ZEcqHA7dbwM">
</iframe>
解决方案
这段代码完全被破坏了,因为最后的 HTML 实际上不是有效的 Python 语法。最简单的方法就是创建一个包含该 HTML 的 python 字符串,然后让hello_world
函数返回该字符串:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
html = """<iframe width="420" height="315"
src="https://www.youtube.com/watch?v=ZEcqHA7dbwM">
</iframe>
"""
return html
if __name__ == '__main__':
app.run(host='0.0.0.0')
当然,如果您创建了一个名为的目录templates
并将 HTML 放在一个文件中,templates/index.html
那么您可以使用 Flask 的render_template
功能来实现相同的目的:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template('index.html')
if __name__ == '__main__':
app.run(host='0.0.0.0')
推荐阅读
- javascript - 使用分页从 API 收集所有数据的正确方法是什么?
- javascript - 如何使用codeigniter中的数组值在表中创建动态列
- linux - 组播源地址改变
- c - C输出问题。任何人都可以解释这个输出吗?
- powershell - AD 用户的个人密码 | 通过 CSV 导入
- mysql - bcrypt 函数的语法错误意外标识符。我哪里错了?
- anylogic - 参数变化:获取一个特定迭代的数据集
- java - 使用 Java 和 htmlUnit 查找表单
- c# - 代码的奇怪行为,在本地工作正常但在舞台上不工作
- r - 增加 str_sub 中的 end 参数,直到我们在数据框中获得唯一值