python - 在 Flask App 中返回 flash.jsonify() 时出错
问题描述
背景:
我正在构建一个基本的烧瓶应用程序,它将允许我从 Atlas Compass 集群返回一个集合,然后使用集合数据创建一个 HTML 容器来显示数据并创建一些 D3 图表。
问题:
我创建了两个@app.route
,让我在决定使用哪个之前可视化两者json.dump
并返回数据不幸的是,虽然我的路线返回数据(通过 index.html 页面),但我的 jsonify 似乎不起作用。 . 我的终端返回以下错误flask.jsonify
json.dump
错误:TypeError: jsonify() behavior undefined when passed both args and kwargs
代码:
这是我的代码,它同时显示了@app.route
import flask
from flask import Flask, jsonify
import pymongo
from pymongo import MongoClient
from bson import ObjectId, json_util
import json
cluster = pymongo.MongoClient("mongodb+srv://group2:<PASSWORD>@cluster0.mpjcg.mongodb.net/<dbname>?retryWrites=true&w=majority")
db = cluster["simply_recipe"]
collection = db["recipes_collection"]
app = Flask(__name__)
@app.route("/recipes", methods=["GET"])
def get_recipes():
all_recipes = list(collection.find({}))
return json.dumps(all_recipes, default=json_util.default)
@app.route("/recipes_jsonify", methods=["GET"])
def get_recipes_jsonify():
all_recipes = list(collection.find({}))
return flask.jsonify(all_recipes, default=json_util.default)
我是 Flask 的初学者,所以毫无疑问我错过了一些明显的东西,有人可以帮忙吗?
解决方案
这里看看这个例子,它解释了 jsonify 如何处理你的数据:
from flask import jsonify
@app.route('/_get_current_user')
def get_current_user():
return jsonify(username=g.user.username,
email=g.user.email,
id=g.user.id)
输出:
{
"username": "admin",
"email": "admin@localhost",
"id": 42
}
推荐阅读
- android - 如何获取 Unitech PA760 的 Android SDK?
- c# - EF6 与 MySQL - 日期时间中的格式异常
- python - Django 应用程序的错误配置错误
- ios - 弹出 iOS UINavigationController 时如何调用方法?
- html - 孩子不尊重其父母的大小 SwiftUI
- linux - .Net Core 3.1 是否具有检测 GPIO 引脚更改的事件驱动方法?
- python - 如何在python的polyglot中用本地目录覆盖下载器目录
- angular-material - Angular 材质表为每条记录增加一行,同时实现 Angular 9 中的行代码扩展
- bash - 如何从输入中查找用户并在不存在时创建用户
- kubernetes - 如何确保 pod 的可访问性