dash-b · 功能 · 撳一下

一個做到嘢嘅 dashboard。

大多數 dashboard 天生就係唯讀:佢俾個數你睇,然後叫你自己去第二度處理。dash-b 嘅 tile 可以有個掣,一撳就寫入一筆 row、更新一筆,或者打開一個由你自己張 table 生成嘅表格。

兩塊瓷磚

一個按鈕,或者一個表格

動作

一個掣,標籤由你揀。佢對你其中一張 table 行一個指定操作——將今日嘅收入標記做已入數、加一個班次、close 一張 ticket。唔使打任何嘢,一撳掣。

資料表格

操作需要細節時就用呢個。欄位係由table 自己嘅 schema 產生,唔係由 design 聲明,所以你改咗一欄名,個表格就跟住變;你刪咗一欄,就唔會再問嗰欄。

咩叫做動作

三條鎖匙,冇第四條

一個 action 指明操作係乜、作用喺乜嘢上面,同埋傳入參數。成個詞彙就係咁多:

  • 指令係一個 registry 入面嘅索引,而只有 dash-b 自己嘅 code 可以加入去。一個 design 無憑空發明一個。
  • 綁定係一個名稱,喺撳掣嗰刻根據你個戶口持有嘅文件去解析。有人 send 一個 design 俾你,入面指明嘅 table 你冇,佢就會停低同你講。
  • 參數係一個 literal,或者一個喺表格、tile 或者撳掣動作入面讀到嘅具名值。只有一層深,冇其他。

寫入 action 入面嘅任何 URL、header、token 或者 role,都係一條死鑰匙。

dash-b 入面冇任何嘢會讀佢哋。有個測試會派發一個帶齊呢四樣嘅 action,然後確認冇一樣去到 handler 度。

呢個詞彙係刻意咁弱。每加一個 operator 入參數語言,就向「規則引擎住喺一個陌生人互相 send 嚟 send 去嘅檔案入面」行近一步,而 design 檔案唔係一個行其他人邏輯嘅地方。

寫入要遵守嘅規則

以下三樣,係對 dash-b 其他地方行事方式嘅反轉

唔明嘅指令就會大聲報錯

其他任何地方,唔認得嘅 key 都會靜靜被忽略,因為一個 design 應該頂得住遇上更新版嘅自己。呢度唔係:一個靜靜地乜都冇做嘅寫入,同成功嘅嗰個睇落完全一樣。

只有真係㩒先算數

係咪真係有人撳咗個掣,由 runtime 決定,永遠唔由 design 決定。聲稱有個手勢發生過嘅 design 會被拒絕。

任何會改數據嘅嘢都要確認

操作分為唯讀、本機,或者有改動。有改動嗰種會先問——而且冇得避開唔問——仲會攞到一條 key,令撳兩次都只會落地一次。

喺邊度唔會出現

匯出嘅 HTML 頁面入面唔會有

將一個 design 匯出做獨立頁面,啲掣就唔會喺入面。匯出唔會行 dash-b 任何 code,所以嗰度嘅表格會收到人打嘅嘢,但就冇地方送——呢個比索性唔提供更差。呢個 tile 係 designer 同戶口功能,匯出直接唔放佢入去,就係咁話你知。

已發佈嘅 link 都係一樣。一個讀者睇到乜、睇唔到乜,由個 tile 綁住邊個嘅數據決定——分享係點運作兩種情況都有講。

佢需要一張表嚟寫入。

可以係你戶口上面嘅一張 table,或者經由你自己 host 嘅 connector 接駁到嘅你自己嘅資料庫——噉樣資料庫密碼永遠唔會去到我哋度。