【发布时间】:2017-09-15 06:04:04
【问题描述】:
这是我用 Python 编写的代码:
from flask import Flask, jsonify, request, render_template
from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)
class Tracks(Resource):
@app.route('/')
def get(self):
test = {
"name": "json2html",
"description": "Converts JSON to HTML tabular representation"
}
return render_template('index.html', value=test)
api.add_resource(Tracks, '/tracks')
if __name__ == '__main__':
app.run(port='5002')
这是我的 index.html 代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />
<title>Hello World!</title>
</head>
<body>
<div>
<p>
Hello {{value|safe}}
</p>
</div>
</body>
</html>
问题是,当我运行服务器并访问相应的 url 页面时,我在浏览器中获得了 html 代码。它看起来像这样:
我希望它显示我通过的字典。我该如何解决?
此问题已被标记为重复问题,但来自给定链接的答案对我的问题没有用处。我必须创建一个新问题,这里有一个解决方案:RESTful API - display returned json in html table
【问题讨论】:
-
您从哪里导入 Flask 和 Api?
-
嗯,您正在使用
Api对象,该对象旨在用于创建 API(应用程序编程接口),因此得名。 API 是一个旨在供其他程序使用的接口,因此毫无疑问,您从中获得的结果并不完全是人类可读的。为什么不使用Flaskapp 对象进行人类可读的输出? -
这是我的导入:
from flask import Flask, jsonify, request, render_template from flask_restful import Api, Resource from sqlalchemy import create_engine -
其实我是flask新手,不知道有什么其他可能的写法