docs/docs/cn/multi-app/multi-app-vs-multi-portal-vs-multi-space.md
NocoBase 提供了多工作区(Portal)、多应用(App)和多空间(Space)三种能力。
它们分别解决不同维度的问题,既可以单独使用,也可以组合使用。
| 能力 | 多工作区(Portal) | 多应用(App) | 多空间(Space) |
|---|---|---|---|
| 解决什么问题 | 提供多个访问入口 | 拆分多个业务系统 | 隔离业务数据 |
| 核心关注点 | 用户从哪里进入 | 系统如何拆分 | 数据属于谁 |
| 数据 | 共享 | 默认独立 | 隔离 |
| 页面与菜单 | 独立 | 独立 | 共享 |
| 插件配置 | 共享 | 独立 | 共享 |
| 用户体系 | 共享 | 可通过 SSO 共享 | 共享 |
| 典型场景 | 不同角色使用不同入口 | 不同业务独立管理 | 多组织、多门店、多租户 |
| 是否可组合 | 可以 | 可以 | 可以 |
多工作区用于在同一个应用内提供多个访问入口。
例如:
ERP 应用
├─ 管理后台(/v/admin)
├─ 门店工作区(/v/store)
├─ 经销商工作区(/v/dealer)
└─ 移动工作区(/v/mobile)
特点:
适用于:
等不同角色需要不同访问入口的场景。
多应用用于将业务拆分为多个独立应用。
例如:
集团系统
├─ CRM
├─ ERP
├─ OA
└─ 数据分析
特点:
适用于:
多空间用于在同一个应用内隔离业务数据。
例如:
门店管理应用
空间
├─ 北京门店
├─ 上海门店
└─ 深圳门店
特点:
对于启用了空间字段的数据表,系统会根据当前空间自动过滤数据。
从用户视角来看:
但所有门店使用的仍然是同一套系统。
这三种能力并不冲突,而是面向不同维度的能力。
它们可以同时使用:
集团系统
CRM 应用
├─ 管理工作区
├─ 销售工作区
└─ 客户工作区
空间
├─ 北京分公司
├─ 上海分公司
└─ 深圳分公司
从概念上可以这样理解:
工作区(Portal)
↓
从哪里进入系统
应用(App)
↓
系统如何拆分
空间(Space)
↓
数据属于谁
如果只是希望为不同角色提供不同入口,可以选择 多工作区。
如果希望将业务拆分为多个独立系统,可以选择 多应用。
如果希望在同一个系统中隔离不同组织或租户的数据,可以选择 多空间。
在实际项目中,这三种能力通常是组合使用的,而不是相互替代。
一句话总结:
多工作区解决入口问题,多应用解决系统拆分问题,多空间解决数据隔离问题。