協作電子表格
與 AI 代理一起構建
協作電子表格後端

協作在線電子表格應用模板
實時協作和公式歷史

一個生產就緒的 協作在線電子表格後端 在 Back4app 具有實時功能和公式評估歷史。包括 ER 圖、數據字典、JSON schema、API 游樂場,以及一個 AI 代理 提示以快速啟動。

關鍵要點

本模板為您提供一個具有即時更新和公式評估歷史的協作電子表格後端,讓您的團隊可以專注於增強用戶協作。

  1. 即時單元格更新使用 WebSocket 架構以實現單元格編輯和內容更改的即時更新。
  2. 公式評估歷史跟踪公式的變更並顯示歷史評估,以提高透明度。
  3. 協作功能允許多個用戶同時編輯單元格並查看即時變更。
  4. 存取控制功能小心管理使用者許可權以保護敏感的試算表數據。
  5. 跨平台協作試算表後端通過統一的 REST 和 GraphQL API 為試算表數據服務網頁和行動客戶端。

什麼是協作線上試算表應用模板?

Back4app 是一個後端即服務 (BaaS),可實現快速產品交付。協作線上試算表應用模板是一個預構建的架構,適用於使用者、單元格、公式評估和協作的更新。連接您喜好的前端(React、Flutter、Next.js 等等),並加快交付速度。

最佳用途:

協作線上試算表應用程序即時數據編輯平台具有公式的項目管理工具協作業務工具MVP 發佈團隊選擇 BaaS 以獲得協作功能

概覽

一個需要即時數據更新、公式歷史記錄和多用戶支持的在線協作電子表格產品。

此模板定義了用戶、單元格、公式和更新,並具備安全的即時共享功能,以便團隊可以快速實現協作。

核心協作電子表格功能

這個中心中的每個技術卡片都使用相同的協作試算表後端架構,包括用戶、單元格、公式和更新。

用戶管理

用戶類別存儲用戶名、電子郵件、密碼和角色。

即時單元格管理

單元格類別連接內容、公式和評估歷史。

公式管理

公式類別處理和追蹤單元格公式。

變更追蹤

更新類別捕捉帶有時間戳的單元格變更。

為什麼要使用 Back4app 建立您的協作在線電子表格應用程序後端?

Back4app 提供後端原語,讓您的團隊可以專注於協作而不是基礎設施。

  • 實時單元格和公式管理: 帶有公式歷史的單元格類,用於有效跟踪電子表格操作。
  • 安全共享和可見性功能: 控制用戶權限,確保在協作環境中的可見性。
  • 實時 + API 靈活性: 利用 Live Queries 和訂閱,同時為所有客戶保持 REST 和 GraphQL 可用。

迅速建立和迭代協作功能,通過一個後端合同跨所有平台。

核心利益

一個協作試算表後端,支持快速開發而不犧牲實時能力。

快速協作應用程式啟動

從完整的用戶、單元和公式架構開始,而不是從頭設計後端。

實時更新

利用實時協作和公式評估來增強用戶體驗。

靈活的訪問控制

通過強大的權限管理用戶對單元和公式的訪問。

可擴展的更新模型

利用 Live Queries 使得僅與用戶相關的變更被傳達。

電子表格數據管理

儲存和整理單元數據及評估,以便在不重設架構的情況下進行交互。

AI 啟動工作流程

快速生成後端框架和整合指導,只需一個結構化提示。

準備好推出您的協作在線電子表格應用程序了嗎?

讓 Back4app AI 代理為您搭建協作電子表格後端,並從一個提示中生成實時功能。

免費開始 — 每月 50 個 AI 代理提示,無需信用卡

技術堆疊

此協作電子表格後端範本包含所有內容。

前端
13+ 種技術
後端
Back4app
數據庫
MongoDB
身份驗證
內建身份驗證 + 會話
API
REST 和 GraphQL
實時
Live Queries

ER 圖

用於協作線上試算表後端架構的實體關係模型。

查看圖表來源
Mermaid
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
    }

集成流程

用戶身份驗證、單元格更新、公式計算和協作的典型運行流程。

查看圖表來源
Mermaid
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

數據字典

協作電子表格架構中每個類的完整字段級別參考。

字段類型描述必填
objectIdStringAuto-generated unique identifier自動
usernameStringUser login name
emailStringUser email address
passwordStringHashed password (write-only)
roleStringRole of the user (e.g., admin, collaborator)
createdAtDateAuto-generated creation timestamp自動
updatedAtDateAuto-generated last-update timestamp自動

7 欄位在 User

安全性和權限

ACL 和 CLP 策略如何保護用戶、單元格、公式和更新。

用戶擁有的個人資料控制

只有用戶可以更新或刪除他們的個人資料;其他人無法修改用戶內容。

單元格數據完整性

只有擁有者可以創建或刪除他們的單元格。請使用雲代碼進行驗證。

範圍讀取訪問

限制單元格讀取僅限相關用戶(例如,用戶僅能查看自己的單元格更新)。

模式(JSON)

原始 JSON 模式定義,準備複製到 Back4app 或用作實作參考。

JSON
{
  "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
        }
      }
    }
  ]
}

使用 AI 代理構建

使用 Back4app AI 代理從此模板生成真正的協作電子表格應用,包括前端、後端、認證,以及單元格、公式和更新流程。

Back4app AI 代理
準備構建
在 Back4app 上創建一個協作在線電子表格應用的後端,具有這個精確的架構和行為。

架構:
1. 用戶(使用 Back4app 內置):用戶名,電子郵件,密碼;objectId,createdAt,updatedAt(系統)。
2. 單元格:內容(字串,必填),公式(字串),評估歷史(字串數組);objectId,createdAt,updatedAt(系統)。
3. 公式:表達式(字串,必填),結果(字串,必填);objectId,createdAt,updatedAt(系統)。
4. 更新:單元格(指向單元格的指針,必填),時間戳(日期,必填);objectId,createdAt,updatedAt(系統)。

安全性:
- 只有用戶可以更新/刪除他們的個人資料。只有擁有者可以創建/刪除他們的單元格和公式。使用雲端代碼進行驗證。

身份驗證:
- 註冊,登錄,登出。

行為:
- 列出用戶,創建/更新單元格,評估公式,並管理實時協作。

交付:
- Back4app 應用,具有架構、ACL、CLP;用戶資料、單元格、公式和更新的前端。

按下下面的按鈕以使用此模板提示預填打開代理。

這是沒有技術後綴的基本提示。您可以在之後調整生成的前端堆棧。

幾分鐘內部署每月 50 條免費提示無需信用卡

API 遊樂場

嘗試根據協作電子表格架構調用 REST 和 GraphQL 端點。響應使用模擬數據,無需 Back4app 帳戶。

正在加載遊樂場…

使用與此模板相同的架構。

選擇您的技術

展開每個卡片以獲取整合步驟、狀態模式、數據模型範例和離線備註。

Flutter 協作電子表格後端

React 協作電子表格後端

React 原生 協作電子表格後端

Next.js 協作電子表格後端

JavaScript 協作電子表格後端

Android 協作電子表格後端

iOS 協作電子表格後端

Vue 協作電子表格後端

Angular 協作電子表格後端

GraphQL 協作電子表格後端

REST API 協作電子表格後端

PHP 協作電子表格後端

.NET 協作電子表格後端

您在每項技術中獲得的內容

每個堆疊使用相同的協作電子表格後端架構和 API 合約。

協作電子表格 的即時協作

使多個用戶能夠在 協作電子表格 中即時編輯和查看變更。

協作電子表格 的安全數據共享

在 協作電子表格 中安全地分享擁有控制訪問權限的電子表格。

協作電子表格 的自定義公式支援

實現和評估為 協作電子表格 需求量身定制的自定義公式。

統一的 協作電子表格 數據結構

在 協作電子表格 中維護所有用戶和會話的一致數據模型。

REST/GraphQL APIs 供 協作電子表格 使用

通過強大的 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完整

設置時間反映從項目啟動到使用此模板架構的第一個單元格或公式查詢的預期持續時間。

常見問題

有關使用此模板構建協作在線電子表格後台的常見問題。

什麼是協作電子表格後端?
協作電子表格模板包含什麼?
為什麼要使用Back4app來開發協作電子表格應用?
我如何使用Flutter執行對單元格和公式的查詢?
我如何使用 Next.js Server Actions 管理訪問?
React 本地應用能夠離線快取單元和公式嗎?
我如何防止未授權的單元訪問?
在 Android 上顯示單元和公式的最佳方式是什麼?
協作更新流程如何端到端運作?

受到全球開發者的信任

加入團隊,更快速地使用 Back4app 模板推出協作電子表格產品。

G2 Users Love Us Badge

準備好建立您的協作在線電子表格應用程序了嗎?

在幾分鐘內開始您的協作電子表格項目。無需信用卡。

選擇技術