agentic_huge_data_base / wiki
页面 Mayan EDMS · 1 总览·DeepWiki 中文全文译文

1 · 总览(Overview)

企业电子文档治理 · 本章是 Mayan EDMS DeepWiki 中文译文的独立章节页,保留原始链接、源码锚点、模块标签和章节层级。

项目Mayan EDMS 章节1 状态全文译文 模块系统架构、界面与交互、文档对象与元数据、工作流与编排
源码线索
  • .gitignore
  • CONTRIBUTING.md
  • DCO
  • README.md
  • README.rst
  • docs/__init__.py
  • docs/_static/book_cover.jpg
  • docs/_templates/message_area.html
  • docs/callbacks.py
  • docs/conf.py
模块标签
  • 系统架构
  • 界面与交互
  • 文档对象与元数据
  • 工作流与编排
  • 检索、召回与索引

中文译文

总览(中文译文)

原始 DeepWiki 页面:https://deepwiki.com/mayan-edms/Mayan-EDMS/1-overview
翻译时间:2026-05-27T08:44:20.185Z
翻译模型:deepseek-chat
原文字符数:9473
项目:Mayan EDMS (mayan-edms)

--- 好的,作为一名资深技术文档翻译专家,我将严格遵循您的要求,对这份 DeepWiki 技术文档进行全文翻译和润色。

---

概述

相关源文件

以下文件被用作生成此 Wiki 页面的上下文:

  • .gitignore
  • CONTRIBUTING.md
  • DCO
  • README.md
  • README.rst
  • docs/__init__.py
  • docs/_static/book_cover.jpg
  • docs/_templates/message_area.html
  • docs/callbacks.py
  • docs/conf.py
  • docs/patches.py
  • docs/utils.py

目的与范围

本文档提供了 Mayan EDMS 的高层概述。Mayan EDMS 是一个基于 Django 构建的开源文档管理系统。文档涵盖了系统的核心目的、架构组件、主要功能和技术栈。

有关安装和部署的详细信息,请参阅安装与部署。如需全面了解核心文档管理模型及其关系,请参阅文档管理核心。有关 API 集成的详细信息,请参阅 REST API 架构

什么是 Mayan EDMS

Mayan EDMS 是一个文档管理系统,旨在存储、检视和分类文件,并着重于保留文档的上下文和业务信息。该系统提供了从入库到组织、处理和检索的完整文档生命周期管理。

核心能力:

  • 文档存储与版本控制
  • OCR(光学字符识别)处理
  • 文档转换与预览生成
  • 元数据管理与标签
  • 基于工作流的业务流程自动化
  • 基于角色的访问控制与权限
  • 跨多个后端的全文搜索
  • 用于程序化集成的 REST API

目标用例:

  • 企业文档管理
  • 合规性与记录管理
  • 业务流程自动化
  • 数字归档与保存
  • 内容组织与检索

来源:README.md:37-41README.rst:9-13

系统架构总览

下图展示了 Mayan EDMS 的主要功能区域及其交互方式:

高层系统组件

graph TB
    subgraph "文档生命周期"
        SOURCES["文档来源<br/>文件上传与导入"]
        PROCESSING["文档处理<br/>OCR、转换、解析"]
        STORAGE["文档存储<br/>文件、版本、页面"]
        ORGANIZATION["文档组织<br/>元数据、标签、文件柜"]
    end

    subgraph "业务逻辑"
        WORKFLOW["工作流引擎<br/>状态与转换"]
        INDEXING["文档索引<br/>层级组织"]
        SEARCH["搜索系统<br/>多后端搜索"]
        PERMISSIONS["访问控制<br/>ACL 与基于角色的权限"]
    end

    subgraph "用户界面"
        WEBUI["Web 界面<br/>Django 模板与 AJAX"]
        RESTAPI["REST API<br/>程序化访问"]
        NAVIGATION["导航系统<br/>菜单与链接"]
    end

    subgraph "基础设施"
        DATABASE["数据库<br/>PostgreSQL/SQLite"]
        CELERY["任务队列<br/>基于 Redis/RabbitMQ 的 Celery"]
        FILESTORAGE["文件存储<br/>本地/对象存储"]
        CACHE["缓存层<br/>图片与内容缓存"]
    end

    SOURCES --> PROCESSING
    PROCESSING --> STORAGE
    STORAGE --> ORGANIZATION
    ORGANIZATION --> INDEXING
    STORAGE --> SEARCH
    WORKFLOW --> STORAGE
    PERMISSIONS --> STORAGE

    WEBUI --> WORKFLOW
    WEBUI --> ORGANIZATION
    RESTAPI --> WORKFLOW
    RESTAPI --> ORGANIZATION
    NAVIGATION --> WEBUI

    PROCESSING --> CELERY
    SEARCH --> DATABASE
    STORAGE --> FILESTORAGE
    PROCESSING --> CACHE

来源:基于聚类分析图和 README.md:37-41

核心架构与代码实体

此图将系统组件映射到代码库中的实际实现:

Django 应用架构

graph TB
    subgraph "Django 项目结构"
        SETTINGS["mayan.settings<br/>配置管理"]
        APPS["MayanAppConfig<br/>应用引导"]
        URLS["URL 配置<br/>路由与视图"]
    end

    subgraph "核心文档应用"
        DOCUMENTS["mayan.apps.documents<br/>Document, DocumentType<br/>DocumentFile, DocumentVersion"]
        METADATA["mayan.apps.metadata<br/>MetadataType, DocumentMetadata"]
        TAGS["mayan.apps.tags<br/>Tag, DocumentTag"]
        CABINETS["mayan.apps.cabinets<br/>文件柜组织"]
    end

    subgraph "处理应用"
        CONVERTER["mayan.apps.converter<br/>文档转换"]
        OCR["mayan.apps.ocr<br/>OCR 处理"]
        PARSING["mayan.apps.document_parsing<br/>内容提取"]
        SIGNATURES["mayan.apps.document_signatures<br/>数字签名"]
    end

    subgraph "工作流与组织"
        WORKFLOWS["mayan.apps.document_states<br/>工作流引擎"]
        INDEXING["mayan.apps.document_indexing<br/>索引模板与节点"]
        SEARCH["mayan.apps.dynamic_search<br/>SearchModel, SearchBackend"]
    end

    subgraph "用户界面应用"
        NAVIGATION["mayan.apps.navigation<br/>Link, Menu, SourceColumn"]
        VIEWS["mayan.apps.views<br/>Django 视图与表单"]
        REST["mayan.apps.rest_api<br/>DRF ViewSets 与 Serializers"]
    end

    subgraph "基础设施应用"
        COMMON["mayan.apps.common<br/>ModelCopy, Events, Settings"]
        PERMISSIONS["mayan.apps.permissions<br/>Permission, Role, ACL"]
        SOURCES["mayan.apps.sources<br/>来源后端"]
        STORAGE["mayan.apps.storage<br/>文件存储后端"]
    end

    APPS --> DOCUMENTS
    APPS --> METADATA
    APPS --> WORKFLOWS
    APPS --> SEARCH
    APPS --> NAVIGATION
    APPS --> COMMON

    DOCUMENTS --> CONVERTER
    DOCUMENTS --> OCR
    DOCUMENTS --> PARSING
    DOCUMENTS --> INDEXING

    WORKFLOWS --> DOCUMENTS
    INDEXING --> DOCUMENTS
    SEARCH --> DOCUMENTS
    PERMISSIONS --> DOCUMENTS

    NAVIGATION --> VIEWS
    VIEWS --> REST

    COMMON --> PERMISSIONS
    SOURCES --> DOCUMENTS

来源:基于聚类分析和 Django 应用结构

技术栈

核心技术

组件技术用途
Web 框架Django主应用框架
数据库PostgreSQL/SQLite数据持久化
任务队列Celery异步处理
消息代理Redis/RabbitMQ任务队列后端
搜索引擎Whoosh/ElasticSearch全文搜索
文件存储本地/对象存储文档文件存储
OCR 引擎Tesseract文本提取
图像处理Pillow/ImageMagick文档转换

开发与部署

组件技术用途
容器化Docker应用打包
编排Docker Compose服务协调
持续集成/持续部署(CI/CD)GitLab CI自动化测试与部署
文档Sphinx技术文档
API 框架Django REST FrameworkREST API 实现

来源:README.md:64-69docs/conf.py:19-29

主要功能总结

文档管理

  • 支持多种格式的文档(PDF、图片、Office 文档)
  • 文档版本控制与修订历史
  • 自动页面提取与缩略图生成
  • 文档类型分类与模板

内容处理

  • 支持多语言的 OCR 文本提取
  • 将文档转换为 Web 友好格式
  • 自动内容解析与元数据提取
  • 数字签名支持

组织与搜索

  • 通过 IndexTemplateIndexNode 实现层级文档索引
  • 通过 TagDocumentTag 模型实现基于标签的分类
  • 通过 Cabinet 层级结构实现文件柜/文件夹组织
  • 跨文档内容和元数据的全文搜索
  • 支持多后端的高级搜索

工作流与自动化

  • 基于状态的工作流引擎,包含 WorkflowWorkflowStateWorkflowTransition
  • 自动化业务流程管理
  • 事件驱动的操作与通知
  • 可配置的审批与审核流程

安全与访问控制

  • 通过 PermissionRole 模型实现基于角色的权限
  • 通过 ACL 系统实现对象级访问控制
  • 用户与用户组管理集成
  • 审计日志与活动追踪

集成与 API

  • 支持完整 CRUD 操作的 RESTful API
  • 支持外部集成的 Webhook
  • 导入/导出功能
  • 支持多种认证后端(LDAP、TOTP)

来源:README.md:37-41README.rst:9-13

硬件要求

最低系统要求:

  • 内存: 2 GB RAM(若禁用 OCR 则为 1 GB)
  • CPU: 多核 64 位处理器,建议主频高于 1 GHz
  • 存储: 根据文档量和保留策略而定
  • 网络: 用于 Web 访问的标准网络连接

生产环境推荐:

  • 内存: 4 GB 以上 RAM 以获得最佳性能
  • CPU: 多核处理器以支持并发文档处理
  • 存储: 为数据库和高速文档访问使用 SSD 存储
  • 网络: 为高可用性部署使用负载均衡器

来源:README.md:72-74README.rst:37-40