- Mongo引擎教程
- MongoEngine - 主页
- MongoEngine——MongoDB
- MongoEngine - MongoDB 指南针
- MongoEngine - 对象文档映射器
- MongoEngine - 安装
- MongoEngine - 连接到 MongoDB 数据库
- MongoEngine - 文档类
- MongoEngine - 动态模式
- MongoEngine - 字段
- MongoEngine - 添加/删除文档
- MongoEngine - 查询数据库
- MongoEngine - 过滤器
- MongoEngine - 查询运算符
- MongoEngine - 查询集方法
- MongoEngine - 排序
- MongoEngine - 自定义查询集
- MongoEngine - 索引
- MongoEngine - 聚合
- MongoEngine - 高级查询
- MongoEngine - 文档继承
- MongoEngine - 原子更新
- MongoEngine-Javascript
- MongoEngine-GridFS
- MongoEngine - 信号
- MongoEngine - 文本搜索
- MongoEngine - 扩展
- MongoEngine 有用资源
- MongoEngine - 快速指南
- MongoEngine - 有用的资源
- MongoEngine - 讨论
MongoEngine - 扩展
MongoEngine 与以下库完美集成 -
marshmallow_mongoengine
marshmallow 是一个独立于 ORM/ODM/框架的序列化/反序列化库,用于将复杂数据类型(例如对象)与本机 Python 数据类型相互转换。使用 MongoEngine 的这个扩展,我们可以轻松地执行序列化/反序列化操作。
首先,像往常一样创建一个 Document 类,如下所示 -
import mongoengine as me class Book(me.Document): title = me.StringField()
然后使用下面的代码生成棉花糖模式 -
from marshmallow_mongoengine import ModelSchema class BookSchema(ModelSchema): class Meta: model = Book b_s = BookSchema()
使用以下代码保存文档:
book = Book(title='MongoEngine Book').save()
并使用下面的代码使用 dump(0 和 load() 执行序列化/反序列化 -
data = b_s.dump(book).data b_s.load(data).data
Flask-MongoEngine
这是一个 Flask 扩展,提供与 MongoEngine 的集成。该库可以轻松处理您的应用程序的 MongoDB 数据库的连接管理。您还可以使用 WTForms 作为模型的模型表单。
安装flask-mongoengine包后,使用以下设置初始化flask应用程序 -
from flask import Flask from flask_mongoengine import MongoEngine app = Flask(__name__) app.config['MONGODB_SETTINGS'] = { 'db': 'mydata', 'host': 'localhost', 'port':27017 } db = MongoEngine(app)
然后使用以下代码定义一个 Document 子类 -
class book(me.Document): name=me.StringField(required=True)
声明上述类的对象,并在访问特定路线时调用 save() 方法。
@app.route('/') def index(): b1=book(name='Introduction to MongoEngine') b1.save() return 'success'
额外 mongoengine
此扩展包含附加字段类型和任何其他魔法。
Eve-Mongo引擎
Eve是一个专为人类设计的开源Python REST API框架。它允许轻松构建和部署高度可定制、功能齐全的 RESTful Web 服务。
Eve 由 Flask 和 Cerberus 提供支持,并为 MongoDB 数据存储提供本机支持。Eve-MongoEngine 提供 MongoEngine 与 Eve 的集成。
使用下面的代码安装并导入扩展 -
import mongoengine from eve import Eve from eve_mongoengine import EveMongoengine
配置设置并初始化 Eve 实例。
my_settings = { 'MONGO_HOST': 'localhost', 'MONGO_PORT': 27017, 'MONGO_DBNAME': 'eve_db' app = Eve(settings=my_settings) # init extension ext = EveMongoengine(app)
定义一个 Document 类,如下所示 -
class Person(mongoengine.Document): name = mongoengine.StringField() age = mongoengine.IntField()
添加模型并运行应用程序,最后使用以下代码 -
ext.add_model(Person) app.run()
Django-MongoEngine
此扩展旨在将 MongoEngine 与 Django API(一个非常流行的 Python Web 开发框架)集成。该项目仍在开发中。