MongoEngine – 扩展
MongoEngine与以下库完美结合 –
marshmallow_mongoengine
marshmallow是一个独立于ORM/ODM/框架的序列化/反序列化库,用于将复杂的数据类型,如对象,转换为本地Python数据类型。使用MongoEngine的这个扩展,我们可以轻松地进行序列化/反序列化操作。
首先,像往常一样创建一个Document类,如下所示
然后用下面的代码生成marshmallow模式-
使用代码保存一个文件:
并使用dump(0和load()进行序列化/反序列化,代码如下 −
Flask-MongoEngine
这是一个Flask扩展,提供与MongoEngine的集成。你的应用程序的MongoDB数据库的连接管理可以通过这个库轻松处理。你也可以使用WTForms作为模型的形式。
安装完flask-mongoengine包后,用以下设置初始化flask应用程序
然后用下面的代码定义一个Document子类–
声明一个上述类的对象,并在访问一个特定路线时调用save()方法。
extras-mongoengine
这个扩展包含额外的字段类型和任何其他的向导。
Eve-MongoEngine
Eve是一个开源的Python REST API框架,为人类设计。它允许毫不费力地建立和部署高度可定制的、功能齐全的RESTful Web服务。
Eve由Flask和Cerberus驱动,它为MongoDB数据存储提供本地支持。Eve-MongoEngine提供MongoEngine与Eve的集成。
使用下面的代码安装和导入扩展-
配置设置并初始化Eve实例。
定义一个文档类,如下图所示
添加模型并运行应用程序,最后使用以下代码 –
Django-MongoEngine
这个扩展旨在将MongoEngine与Django API集成,Django是一个非常流行的Python网络开发框架。这个项目仍在开发中。