Flask中的渲染模板在浏览器中返回HTML代码

python html flask jinja2

2009 观看

2回复

107 作者的声誉

这个问题已经在这里有了答案:

这是我用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-在html表中显示返回的json

作者: pingwin850 的来源 发布者: 2017 年 9 月 15 日

回应 2


0

484326 作者的声誉

决定

API东西是用于编写API的。如果您要编写普通的网站,则不需要它。

您应该删除Api包装器,资源继承以及对的调用add_resoutce

作者: Daniel Roseman 发布者: 2017 年 9 月 15 日

0

79 作者的声誉

摆脱API。仅使用应用程序功能。您使用的烧瓶不是一个宁静的API。这是文档中的示例

作者: Jay 发布者: 2017 年 9 月 15 日
32x32