awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
MongoEngine avatar

MongoEngine/mongoengine

0
View on GitHub↗
4,349 星标·1,232 分支·Python·MIT·5 次浏览mongoengine-odm.readthedocs.io↗

Mongoengine

MongoEngine 是一个 Python 对象文档映射器(ODM),它将数据库记录转换为对象,从而为数据持久化提供面向对象的接口。它作为 MongoDB 的文档管理器和模式验证器,将类映射到文档以强制执行数据类型和验证规则。

该项目提供了一个延迟加载的 QuerySet 系统,用于使用 Pythonic 语法过滤、排序和聚合集合。它通过文档继承、递归嵌入式文档处理和基于引用的对象链接等功能管理复杂数据结构。

该库涵盖了广泛的功能,包括模式迁移、全文搜索以及通过 GridFS 文件系统管理大二进制文件。它还包括用于数据库索引优化、查询性能分析和基于信号的生命周期钩子的工具,以在文档事件期间自动化逻辑。

Features

  • Object-Document Mappers - Translates Python classes into MongoDB documents to provide an object-oriented interface for data persistence.
  • MongoDB Eloquent Adapters - Provides an object-document mapping layer for MongoDB, translating Python classes into database documents.
  • Class-Based Schema Mappings - Provides a declarative class-based system to map Python objects to MongoDB collections with defined field types.
  • Data Validation - Enforces data integrity through built-in or custom rules and field-level constraints before saving documents.
  • Document Schema Enforcement - Defines blueprints for collections through mapping classes to documents with specified fields and indexes.
  • Document Embedding - Supports nesting related data structures by treating embedded documents as dependent objects within a parent document.
  • Automatic Object Resolution - Links separate documents through identifiers that are automatically resolved into full objects upon access.
  • ODM Frameworks - Functions as an ODM framework that translates MongoDB records into Python objects.
  • MongoDB Integrations - Provides a comprehensive interface for managing MongoDB documents, including embedded documents and references.
  • MongoDB Schema Modeling - Enforces data integrity through a framework for defining document blueprints with strict types and custom validation rules.
  • NoSQL Data Modeling - Implements a flexible NoSQL data model that supports complex Python data structures, inheritance, and relationships.
  • NoSQL Database Querying - Provides a lazy-loaded queryset system for filtering, sorting, and aggregating MongoDB collections using Pythonic syntax.
  • Object Persistence - Creates and updates documents in the database by persisting object attributes.
  • Queryset Filtering Tools - Executes filters, sorting, and slicing on collections of documents to retrieve specific subsets of data.
  • Document-Based Querying - Retrieves data using filters, operators, sorting, and aggregation to find specific documents.
  • Collection-Based Inheritance - Stores different document types in a single collection while querying both specific subtypes and general superclasses.
  • Lazy-Loaded Result Sets - Ships a chainable query interface that defers database execution until the results are explicitly accessed.
  • Binary Large Object Storage - Manages large binary data using the MongoDB GridFS filesystem for efficient storage and streaming.
  • Cascade Deletion Rules - Links documents together and defines automatic deletion rules for when a referenced document is removed.
  • Database Indexing - Supports the creation of collection indexes with multi-field keys and background processing.
  • Full Text Search - Enables full-text searches across documents with results ordered by relevance score.
  • GridFS Integrations - Supports storage and retrieval of large binary files via the MongoDB GridFS filesystem.
  • Query Optimizations - Improves data retrieval speeds through the use of indexes, query profiling, and efficient filtering.
  • Schema Migrations - Updates existing database records to match changes in the object model such as adding new fields.
  • Application Lifecycle Event Triggers - Executes automated business logic triggered by document lifecycle changes such as creation or deletion.
  • Signal-Based Lifecycle Hooks - Provides signal-based hooks to trigger custom logic during document events like saving or deleting.
  • Schema Registration - Uses Python metaclasses to automatically register document schemas and coordinate inheritance across database collections.
  • Data Modeling and ODM - Document-object mapper for Python applications.
  • Database Clients - Object-Document-Mapper for MongoDB.
  • Database ORMs - Listed in the “Database ORMs” section of the Awesome Python awesome list.
  • Database ORMs and ODMs - Document-Object Mapper for MongoDB.
  • Object Relational Mappers - Object-document mapper for MongoDB.
  • Language Drivers - ODM library for Python applications.

Star 历史

mongoengine/mongoengine 的 Star 历史图表mongoengine/mongoengine 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

mongoengine/mongoengine 是做什么的?

MongoEngine 是一个 Python 对象文档映射器(ODM),它将数据库记录转换为对象,从而为数据持久化提供面向对象的接口。它作为 MongoDB 的文档管理器和模式验证器,将类映射到文档以强制执行数据类型和验证规则。

mongoengine/mongoengine 的主要功能有哪些?

mongoengine/mongoengine 的主要功能包括:Object-Document Mappers, MongoDB Eloquent Adapters, Class-Based Schema Mappings, Data Validation, Document Schema Enforcement, Document Embedding, Automatic Object Resolution, ODM Frameworks。

mongoengine/mongoengine 有哪些开源替代品?

mongoengine/mongoengine 的开源替代品包括: mongodb/mongoid — Mongoid is an object-document mapper for Ruby that translates Ruby objects into MongoDB documents. It serves as a… automattic/mongoose — Mongoose is an object data modeling library and framework for Node.js that maps application objects to MongoDB… coleifer/peewee — Peewee is a SQL object-relational mapper and query builder that provides an object-oriented interface for mapping… mongodb/laravel-mongodb — This project is a MongoDB database driver and object-relational mapper that brings MongoDB support to the Laravel… mongodb/mongo-python-driver — The MongoDB Python Driver is a client library and NoSQL database client used to execute CRUD operations and manage… typeorm/typeorm — TypeORM is an object-relational mapper for TypeScript and JavaScript that bridges the gap between object-oriented…

Mongoengine 的开源替代方案

相似的开源项目,按与 Mongoengine 的功能重合度排序。
  • mongodb/mongoidmongodb 的头像

    mongodb/mongoid

    3,917在 GitHub 上查看↗

    Mongoid is an object-document mapper for Ruby that translates Ruby objects into MongoDB documents. It serves as a document database mapper and client library, providing a structured way to manage data persistence and retrieval within a NoSQL environment. The project distinguishes itself by offering advanced data retrieval tools, including vector search for semantic similarity and full-text search for keyword matching. It implements high-security data protection through client-side field-level encryption, encryption key rotation, and TLS connection security to protect sensitive information. B

    Ruby
    在 GitHub 上查看↗3,917
  • automattic/mongooseAutomattic 的头像

    Automattic/mongoose

    27,479在 GitHub 上查看↗

    Mongoose is an object data modeling library and framework for Node.js that maps application objects to MongoDB documents. It functions as a document mapper and schema validator, ensuring consistent data types and validation rules for records stored in MongoDB. The project provides a system for defining structured schemas to model application data, including the ability to create hierarchical data structures through nested schema composition. It implements a middleware-based hook system that allows for the interception and modification of data states during the lifecycle of database operations

    JavaScript
    在 GitHub 上查看↗27,479
  • coleifer/peeweecoleifer 的头像

    coleifer/peewee

    11,971在 GitHub 上查看↗

    Peewee is a SQL object-relational mapper and query builder that provides an object-oriented interface for mapping application classes to relational database tables. It functions as a relational database toolkit for managing schemas, executing migrations, and handling complex table relationships. The project distinguishes itself by providing an asyncio database driver for non-blocking database operations, ensuring event loop responsiveness. It also supports semi-structured data storage, allowing the storage and querying of flexible JSON documents within traditional relational database systems.

    Pythonasynciodankfastapi
    在 GitHub 上查看↗11,971
  • mongodb/laravel-mongodbmongodb 的头像

    mongodb/laravel-mongodb

    7,075在 GitHub 上查看↗

    This project is a MongoDB database driver and object-relational mapper that brings MongoDB support to the Laravel Eloquent model and query builder. It provides a NoSQL model mapper that allows MongoDB collections to be mapped to object-oriented models using the Active Record pattern. The integration enables the use of a fluent query builder for constructing queries and aggregation pipelines without writing raw database syntax. It supports schema-less model integration, allowing applications to manage unstructured data while maintaining compatibility with standard object-oriented patterns. Th

    PHP
    在 GitHub 上查看↗7,075
  • 查看 Mongoengine 的所有 30 个替代方案→