Python 如何将Pymodm对象转换为JSON?
我使用Pymodm作为带有python flask的mongoDB odm。我已经查看了代码和文档(和),但找不到我要找的内容 我正在寻找一种从数据库中获取数据的简单方法,无需将其转换为pymodm对象,而是作为简单的JSON。pymodm是否可以实现这一点Python 如何将Pymodm对象转换为JSON?,python,json,mongodb,pymodm,Python,Json,Mongodb,Pymodm,我使用Pymodm作为带有python flask的mongoDB odm。我已经查看了代码和文档(和),但找不到我要找的内容 我正在寻找一种从数据库中获取数据的简单方法,无需将其转换为pymodm对象,而是作为简单的JSON。pymodm是否可以实现这一点 目前,我正在重载flask JSONEncoder来处理DateTime和ObjectID,并使用它将pymodm对象转换为JSON 从PyMODM文档中看不出这一点,但下面介绍了如何做到这一点: pymodm_obj.to_son().t
目前,我正在重载flask JSONEncoder来处理DateTime和ObjectID,并使用它将pymodm对象转换为JSON 从PyMODM文档中看不出这一点,但下面介绍了如何做到这一点:
pymodm_obj.to_son().to_dict()
事实上,我只是重读了你的问题,我不认为任何事情会迫使你在项目中的任何地方使用PyMODM,一旦你决定使用它。因此,如果您只是在寻找JSON结构,您可以使用基本的pymongo包功能。具有:
from pymodm import MongoModel, fields
import json
class Foo(MongoModel):
name = fields.CharField(required=True)
a=Foo()
你可以做:
jsonFooString=json.dumps(a.to_son().to_dict())
如果您需要构建CRUDAPI,您可能还需要检查这个小软件包,基本上是pymodm的DRF 因此,如果您想要创建/更新/删除,它将如下所示 从api.pymodm_rest导入视图集
class ServiceAreaViewSet(viewsets.ModelViewSet):
queryset = ServiceArea.objects
instance_class = ServiceArea
lookup_field = '_id'
[这就是我之前所做的。正如我在问题中所说的,我正在重载JSONECODER来处理特殊字段。最后,它实际上运行得很好,对我来说是一个足够好的解决方案。这是一种缺陷,
pymodm
没有直接的方法将对象导出到json,而json可以正确处理,例如,ObjectId()
字段