在 flask 函数中返回时漂亮地打印一个 json 文件
Pretty Print a json file when returning in a flask function
我想弄清楚当我在 flask 函数中 return 时如何漂亮地打印 json 文件。我设法使用 json.dump 漂亮地打印了它,但没有使用 flask 函数。这就是我所拥有的":
from flask import Flask, jsonify
import flask
import json
app = Flask(__name__)
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return json.dumps(data, indent=4)
app.run()
它打印汽车,但我只得到
谢谢
在您的 html 中,将其放在这些标签之间:
<pre><code>your_return_json here</code></pre>
建议:使用jinja2 html模板en return render_template
from flask import Flask, jsonify, render_template
import flask
import json
app = Flask(__name__)
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return render_template('your_template.html from a templates subfolder', data=json.dumps(data, indent=4))
app.run()
文件夹 templates/ 中有一个 template.html 文件,内容为:
<pre><code>{{ data }}</code></pre>
有一个配置选项 JSONIFY_PRETTYPRINT_REGULAR
允许您执行此操作。
from flask import Flask, jsonify
import flask
import json
app = Flask(__name__)
app.config["JSONIFY_PRETTYPRINT_REGULAR"] = True
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return jsonify(data)
app.run()
请注意 return 使用 jsonify
而不是 json.dumps
。
我想弄清楚当我在 flask 函数中 return 时如何漂亮地打印 json 文件。我设法使用 json.dump 漂亮地打印了它,但没有使用 flask 函数。这就是我所拥有的":
from flask import Flask, jsonify
import flask
import json
app = Flask(__name__)
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return json.dumps(data, indent=4)
app.run()
它打印汽车,但我只得到
谢谢
在您的 html 中,将其放在这些标签之间:
<pre><code>your_return_json here</code></pre>
建议:使用jinja2 html模板en return render_template
from flask import Flask, jsonify, render_template
import flask
import json
app = Flask(__name__)
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return render_template('your_template.html from a templates subfolder', data=json.dumps(data, indent=4))
app.run()
文件夹 templates/ 中有一个 template.html 文件,内容为:
<pre><code>{{ data }}</code></pre>
有一个配置选项 JSONIFY_PRETTYPRINT_REGULAR
允许您执行此操作。
from flask import Flask, jsonify
import flask
import json
app = Flask(__name__)
app.config["JSONIFY_PRETTYPRINT_REGULAR"] = True
with open('VO/IFATC EG/qotd.json') as qotd_file:
data = json.load(qotd_file)
rr = data['questions']
car = json.dumps(data, indent=4)
print(car)
@app.route('/')
def words():
return jsonify(data)
app.run()
请注意 return 使用 jsonify
而不是 json.dumps
。