繁体   English   中英

Flask:jsonify 列出的生成器

[英]Flask: jsonify listed generator

我正在使用 flask 对已使用list()命令在字典中列出的生成器进行 jsonify,如下所示:

r = {
      "stocks": list(current_user.stocks)
     }

但是当我尝试使用jsonify(r)时,出现以下错误:

TypeError:股票类型的 Object 不是 JSON 可序列化的

在终端中,如果我只是打印出list(current_user.stocks) ,它会返回给我:

[<Stocks GOOGL>, <Stocks TSLA>]

Stocks 是我在 flask-sqlalchemy 中使用的表/类。 我希望 JSON 看起来像这样:

{"stocks": [<Stocks GOOGL>, <Stocks TSLA>]}

我对<Stocks GOOGL>没有问题,而另一个数组元素是字符串。

关于如何在 dict 中将其 jsonify 的任何想法? 提前致谢!

您提供的示例不是有效的 JSON。 您可以尝试以下方法:

r['stocks'] = list(map(repr, r['stocks']))

然后jsonify(r)应该产生类似的东西:

{"stocks": ["<Stocks GOOGL>", "<Stocks TSLA>"]} # Note that these are strings

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM