跳转到主要内容

Python对象MongoDB对象数据库(MODB)

项目描述

https://img.shields.io/pypi/v/jaraco.modb.svg https://img.shields.io/pypi/pyversions/jaraco.modb.svg tests Ruff Code style: Black https://img.shields.io/badge/skeleton-2023-informational

jaraco.modb 是一个用于将Python对象持久化到 MongoDB 的小型、纯Python库。

手动使用

jaraco.modb 通过使用 jsonpickle,简化了将可序列化Python对象转换为MongoDB兼容表示的过程,以便轻松存储在MongoDB数据库中。

可以简单地将Python对象编码和解码为MongoDB BSON兼容的表示

class MyObject(object):
    def __init__(self, val):
        self.val = val

import jaraco.modb
import pymongo
mongo_collection = pymongo.MongoClient().mydb.mycollection
val = MyObject(3)
# save the object to the DB
id = mongo_collection.save(jaraco.modb.encode(val))
# retrieve the object from the DB
new_val = jaraco.modb.decode(mongo_collection.find_one(id))
assert isinstance(new_val, MyObject)
assert new_val.val == 3

更详细的教程现在已作为 Jupyter Notebook 发布。

自动使用

jaraco.modb 还提供适合自动编码任意对象以供pymongo.Database使用的SON Manipulator。

jaraco.modb.SONManipulator.install(mongo_collection.database)
mongo_collection.save({'val': val})

不幸的是,由于SONManipulator的API限制,无法将自定义对象作为文档本身保存(文档必须始终是字典)。

项目详情


下载文件

下载适用于您平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

jaraco.modb-6.1.0.tar.gz (13.8 kB 查看哈希值)

上传时间 源代码

构建分发

jaraco.modb-6.1.0-py3-none-any.whl (3.6 kB 查看哈希值)

上传时间 Python 3

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面