2

我将 Pymodm 用作带有 python 烧瓶的 mongoDB odm。我查看了代码和文档(https://github.com/mongodb/pymodmhttp://pymodm.readthedocs.io/en/latest),但找不到我要找的东西。

我正在寻找一种简单的方法来从数据库中获取数据,而无需将其转换为 pymodm 对象,而是将其转换为纯 JSON。pymodm可以做到这一点吗?

目前,我正在重载烧瓶 JSONEncoder 以处理 DateTime 和 ObjectID 并使用它将 pymodm 对象转换为 JSON。

4

3 回答 3

2

从 PyMODM 文档中并不明显,但这里是如何做到的:

pymodm_obj.to_son().to_dict()

实际上,我只是重新阅读了您的问题,一旦您决定使用 PyMODM,我认为没有任何东西会迫使您在项目中的任何地方使用它。因此,如果您只是在寻找 JSON 结构,您可以使用基本的 pymongo 包功能。

于 2018-03-06T03:26:17.770 回答
1

有:

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())
于 2018-04-06T10:06:17.453 回答
-1

如果您需要构建 CRUD api,您可能还想检查这个小包,基本上是用于 pymodm 的 DRF

所以如果你想创建 CREATE/UPDATE/DELETE 它看起来像这样

从 api.pymodm_rest 导入视图集

class ServiceAreaViewSet(viewsets.ModelViewSet):
    queryset = ServiceArea.objects
    instance_class = ServiceArea
    lookup_field = '_id'

[ https://github.com/lokoArt/pymodm_rest][1]

于 2019-03-26T01:18:50.153 回答