- MongoEngine 教程
- MongoEngine - 首頁
- MongoEngine - MongoDB
- MongoEngine - MongoDB Compass
- MongoEngine - 物件文件對映器
- MongoEngine - 安裝
- MongoEngine - 連線到 MongoDB 資料庫
- MongoEngine - 文件類
- MongoEngine - 動態模式
- MongoEngine - 欄位
- MongoEngine - 新增/刪除文件
- MongoEngine - 查詢資料庫
- MongoEngine - 過濾器
- MongoEngine - 查詢運算子
- MongoEngine - QuerySet 方法
- MongoEngine - 排序
- MongoEngine - 自定義 Query Sets
- 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()
然後使用以下程式碼生成 marshmallow 模式:
from marshmallow_mongoengine import ModelSchema
class BookSchema(ModelSchema):
class Meta:
model = Book
b_s = BookSchema()
使用以下程式碼儲存文件
book = Book(title='MongoEngine Book').save()
並使用以下程式碼使用 dump() 和 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'
extras-mongoengine
此擴充套件包含其他欄位型別和任何其他奇技淫巧。
Eve-MongoEngine
Eve 是一個為人類設計的開源 Python REST API 框架。它允許輕鬆構建和部署高度可定製、功能齊全的 RESTful Web 服務。
Eve 由 Flask 和 Cerberus 提供支援,它為 MongoDB 資料儲存提供原生支援。Eve-MongoEngine 為 Eve 提供了 MongoEngine 整合。
使用以下程式碼安裝並匯入擴充套件:
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 整合,Django API 是一個非常流行的 Python Web 開發框架。該專案仍在開發中。