python - 如何将 MongoDB 查询转换为 JSON?

for p in db.collection.find({"test_set":"abc"}):
    posts.append(p)
thejson = json.dumps({'results':posts})
return  HttpResponse(thejson, mimetype="application/javascript")

在我的 Django/Python 代码中,由于“ObjectID”,我无法从 mongo 查询返回 JSON。错误提示“ObjectID”不可序列化。

我该怎么办? 一个hacky的方法是循环:

for p in posts:
    p['_id'] = ""

最佳答案

json 模块由于 ObjectID 等原因无法工作。

幸运的是 PyMongo提供json_util其中...

... allow[s] for specialized encoding and decoding of BSON documents into Mongo Extended JSON's Strict mode. This lets you encode / decode BSON documents to JSON even when they use special BSON types.

https://stackoverflow.com/questions/4404742/

相关文章:

ruby-on-rails - Heroku 的 Rails、Mongoid 和 Unicorn 配

python - 为什么使用 update_one 更新记录会引发 ValueError?

mongodb - Spring数据MongoDb : MappingMongoConverter

c# - ORM 与 NoSQL API 是多余的吗?

mongodb - 在 mongodb 中存储图形

perl - 如何加快 MongoDB 插入/秒?

mongodb - Mongo 计算一组文档中每个值的出现次数

mongodb - 使用mongodb在UTC中存储日期时如何处理时区问题?

mongodb - 如何在 MongoDB 中删除或删除集合?

mongodb - 使用 $toLower 更新 MongoDB 集合