您对将动态语言中的对象保存在文档数据库中的最优雅方式有任何见解吗?
我在 C# 方面有扎实的背景,并且刚刚开始使用 Python 进行编程。同时,我正在尝试学习 MongoDB 的诀窍。
现在我想知道:将数据保存到 MongoDB 数据库的最优雅的方法是什么?我考虑了几种方法:
使我所有的 Python 类都能够创建表示其状态的字典和列表图。此外,让他们能够从这样的图表初始化他们的状态。当我想持久化一个对象时,我会询问它的图形表示并持久化。当我想获取一个对象时,我将检索一个文档图并将其提供给
__init__
我的类的方法。创建一个单独的 Mapper 类,能够检查给定对象并创建字典和列表图,然后我可以将其存储在 MongoDB 中。映射器还将负责创建其数据已从数据库中检索到的对象。
我尝试了mongoengine,一个文档对象映射器。但是,当它迫使我从特定类(文档)派生我的类时,我感到很失望。它让我想起了微软的 Entity Framework 1.0 和缺乏 POCO 的支持。我不想被迫从特定的类派生。感觉不对,但我不确定这是否真的是动态语言中的问题。
我的 C# 背景是否阻碍了我的思考?我确信我还没有理解动态语言提供的灵活性程度,因此任何关于最佳实践的建议或提示都将不胜感激。
谢谢你。