关键要点
此模板为您提供一个具有实时更新和公式评估历史的协作电子表格后端,以便您的团队能够专注于增强用户协作。
- 实时单元格更新 — 使用WebSocket架构实现单元格编辑和内容更改的即时更新。
- 公式评估历史 — 跟踪公式的更改并显示历史评估,以确保透明度。
- 协作功能 — 允许多个用户同时编辑单元格并查看实时更改。
- 访问控制功能 — 谨慎管理用户权限以保护敏感电子表格数据。
- 跨平台协作电子表格后台 — 通过统一的REST和GraphQL API为电子表格数据提供Web和移动客户端服务。
什么是协作在线电子表格应用程序模板?
Back4app是一种后端即服务(BaaS),用于快速产品交付。协作在线电子表格应用程序模板是一个预构建的架构,包含用户、单元格、公式评估和协作更新。连接你喜欢的前端(React、Flutter、Next.js等)并更快上市。
最佳适用于:
概述
一个协作在线电子表格产品需要实时数据更新、公式历史记录和对多个用户的支持。
此模板定义了用户、单元格、公式和更新,具备安全的实时共享功能,以便团队能够迅速实现协作。
核心协作电子表格功能
本中心中的每个技术卡都使用相同的协作电子表格后端架构,包括用户、单元格、公式和更新。
用户管理
用户类存储用户名、电子邮件、密码和角色。
实时单元格管理
单元格类链接内容、公式和评估历史。
公式管理
公式类处理和跟踪单元格公式。
变更跟踪
更新类捕获带有时间戳的单元格更改。
为什么要使用Back4app构建您的在线协作电子表格应用程序后端?
Back4app提供后端原语,以便您的团队可以专注于协作,而不是基础设施。
- •实时单元格和公式管理: 具有公式历史记录的单元格类,以有效跟踪电子表格操作。
- •安全共享和可见性功能: 控制用户权限,并确保在协作环境中可见。
- •实时 + API灵活性: 在保持REST和GraphQL对所有客户端可用的同时,利用Live Queries和订阅。
在所有平台上通过一个后端合同快速构建和迭代协作功能。
核心收益
一个协作电子表格后端,使快速开发成为可能而不牺牲实时能力。
快速协作应用上线
从完整的用户、单元格和公式架构开始,而不是从头设计后端。
实时更新
利用实时协作和公式评估来增强用户体验。
灵活的访问控制
通过强大的权限管理用户对单元格和公式的访问。
可扩展的更新模型
利用 Live Queries,只传达与用户相关的变化。
电子表格数据管理
存储和组织单元格数据和评估,以便在不重置架构的情况下进行交互。
AI 启动工作流程
快速生成后端框架和集成指南,使用一个结构化提示。
准备好启动您的协作在线电子表格应用吗?
让 Back4app AI 代理为您的协作电子表格后端搭建框架,并从一个提示中生成实时功能。
免费开始 - 每月 50 个 AI 代理提示,免信用卡要求
技术栈
此协作电子表格后端模板中包含的所有内容。
ER 图
为协作在线电子表格后端架构的实体关系模型。
涵盖用户、单元格、公式和更新的架构。
查看图表源
erDiagram
User ||--o{ Spreadsheet : "owner"
User ||--o{ AccessLog : "user"
Spreadsheet ||--o{ Cell : "contains"
Cell ||--o{ FormulaHistory : "applies to"
User {
String objectId PK
String username
String email
String password
String role
Date createdAt
Date updatedAt
}
Spreadsheet {
String objectId PK
String title
Pointer owner FK
Date createdAt
Date updatedAt
}
Cell {
String objectId PK
Pointer spreadsheet FK
Number row
Number column
String value
Date createdAt
Date updatedAt
}
FormulaHistory {
String objectId PK
Pointer cell FK
String formula
Date evaluatedAt
Date createdAt
Date updatedAt
}
AccessLog {
String objectId PK
Pointer user FK
Pointer spreadsheet FK
Date accessTime
Date createdAt
Date updatedAt
}
集成流程
用户身份验证、单元格更新、公式评估和协作的典型运行时流程。
查看图表源
sequenceDiagram
participant User
participant App as Collaborative Online Spreadsheet App
participant Back4app as Back4app Cloud
User->>App: Login
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Create new spreadsheet
App->>Back4app: POST /classes/Spreadsheet
Back4app-->>App: Spreadsheet details
User->>App: Update cell value
App->>Back4app: PUT /classes/Cell
Back4app-->>App: Updated cell details
User->>App: View formula history
App->>Back4app: GET /classes/FormulaHistory
Back4app-->>App: Formula evaluation history
数据字典
协作电子表格架构中每个类的字段级完整参考。
| 字段 | 类型 | 描述 | 必填 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自动 |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role of the user (e.g., admin, collaborator) | |
| createdAt | Date | Auto-generated creation timestamp | 自动 |
| updatedAt | Date | Auto-generated last-update timestamp | 自动 |
7 字段在 User 中
安全性和权限
ACL 和 CLP 策略如何保护用户、单元格、公式和更新。
用户拥有的个人资料控制
只有用户可以更新或删除他们的个人资料;其他人无法修改用户内容。
单元格数据完整性
只有所有者可以创建或删除他们的单元格。使用云代码进行验证。
范围读取访问
将单元格读取限制为相关用户(例如用户仅查看自己的单元格更新)。
架构(JSON)
原始 JSON 架构定义,准备复制到 Back4app 或用作实现参考。
{
"classes": [
{
"className": "User",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Spreadsheet",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"title": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Cell",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"spreadsheet": {
"type": "Pointer",
"required": true,
"targetClass": "Spreadsheet"
},
"row": {
"type": "Number",
"required": true
},
"column": {
"type": "Number",
"required": true
},
"value": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "FormulaHistory",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"cell": {
"type": "Pointer",
"required": true,
"targetClass": "Cell"
},
"formula": {
"type": "String",
"required": true
},
"evaluatedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AccessLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"user": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"spreadsheet": {
"type": "Pointer",
"required": true,
"targetClass": "Spreadsheet"
},
"accessTime": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}与人工智能代理一起构建
使用 Back4app 人工智能代理从此模板生成一个真实的协作电子表格应用,包括前端、后端、身份验证,以及单元格、公式和更新流程。
在Back4app上创建一个具有此确切架构和行为的协作在线电子表格应用后端。 架构: 1. 用户(使用Back4app内置):用户名,电子邮件,密码;objectId,createdAt,updatedAt(系统)。 2. 单元格:内容(字符串,必填),公式(字符串),评估历史(字符串数组);objectId,createdAt,updatedAt(系统)。 3. 公式:表达式(字符串,必填),结果(字符串,必填);objectId,createdAt,updatedAt(系统)。 4. 更新:单元格(指向单元格的指针,必填),时间戳(日期,必填);objectId,createdAt,updatedAt(系统)。 安全性: - 只有用户可以更新/删除他们的个人资料。只有所有者可以创建/删除他们的单元格和公式。使用云代码进行验证。 认证: - 注册,登录,注销。 行为: - 列出用户,创建/更新单元格,评估公式,管理实时协作。 交付: - Back4app 应用程序,带有架构、ACL、CLP;用户资料、单元格、公式和更新的前端。
按下面的按钮打开代理,带有预填充的此模板提示。
这是没有技术后缀的基本提示。您可以在之后调整生成的前端堆栈。
API Playground
尝试REST和GraphQL端点,与协作电子表格架构进行对接。响应使用模拟数据,不需要Back4app帐户。
使用与此模板相同的架构。
选择您的技术
展开每个卡片以获取集成步骤、状态模式、数据模型示例和离线备注。
Flutter 协作电子表格后端
React 协作电子表格后端
React 原生 协作电子表格后端
Next.js 协作电子表格后端
JavaScript 协作电子表格后端
Android 协作电子表格后端
iOS 协作电子表格后端
Vue 协作电子表格后端
Angular 协作电子表格后端
GraphQL 协作电子表格后端
REST API 协作电子表格后端
PHP 协作电子表格后端
.NET 协作电子表格后端
每项技术的收获
每个技术栈使用相同的协作电子表格后端架构和API合同。
协作电子表格的实时协作
允许多个用户即时编辑和查看协作电子表格中的更改。
协作电子表格的安全数据共享
安全共享电子表格,控制协作电子表格中的访问权限。
协作电子表格的自定义公式支持
为 协作电子表格 的需求实现和评估自定义公式。
统一的 协作电子表格 数据结构
在 协作电子表格 中保持所有用户和会话的一致数据模型。
用于 协作电子表格 的 REST/GraphQL API
通过强大的 API 轻松访问和操纵您的 协作电子表格 数据。
协作电子表格 的可扩展性
轻松将其他功能和特性集成到您的 协作电子表格 中。
协作电子表格框架比较
比较所有支持的技术的设置速度、SDK 风格和 AI 支持。
| 框架 | 设置时间 | 协作电子表格优点 | SDK 类型 | AI 支持 |
|---|---|---|---|---|
| ~3–7 分钟 | 用于移动和网页的协作电子表格的单一代码库。 | Typed SDK | 完整 | |
| 快速(5分钟)设置 | 用于协作电子表格的快速网页仪表板。 | Typed SDK | 完整 | |
| 大约5分钟 | 用于协作电子表格的跨平台移动应用。 | Typed SDK | 完整 | |
| 大约5分钟 | 用于协作电子表格的服务器渲染网页应用。 | Typed SDK | 完整 | |
| ~3–5 分钟 | 用于协作电子表格的轻量级网页集成。 | Typed SDK | 完整 | |
| ~3–7 分钟 | 用于协作电子表格的原生 Android 应用。 | Typed SDK | 完整 | |
| 快速 (5 分钟) 设置 | 原生 iOS 应用用于协作电子表格。 | Typed SDK | 完整 | |
| 约 5 分钟 | React 的网页 UI 用于协作电子表格。 | Typed SDK | 完整 | |
| 大约 5 分钟 | 用于协作电子表格的企业网页应用。 | Typed SDK | 完整 | |
| 不到 2 分钟 | 灵活的 GraphQL API 用于协作电子表格。 | GraphQL API | 完整 | |
| 快速 (2 分钟) 设置 | REST API 集成用于协作电子表格。 | REST API | 完整 | |
| ~3分钟 | 服务器端 PHP 后端用于协作电子表格。 | REST API | 完整 | |
| ~5分钟 | .NET 后端用于协作电子表格。 | Typed SDK | 完整 |
设置时间反映了从项目启动到使用此模板架构进行第一次单元格或公式查询的预期持续时间。
常见问题
关于使用此模板构建协作在线电子表格后台的常见问题。