Skip to Content

require 規則

require 表達條件式必填:當 when 成立時,指定 stored scalar 不得為 null 或空字串。它比只在前端切換 required 樣式可靠,因為所有寫入入口都會受同一契約約束。

Payload

{ "type": "require", "name": "送出後必須填寫負責人", "column": "負責人姓名", "when": [ { "column": "狀態", "op": "in", "value": ["已送出", "處理中", "完成"] } ] }

省略 when 代表每次 create 或 update 都必填。column 只能是 stored scalar;link 的存在性應由 SCP link leaf 或適合的資料模型契約處理。

前端整合

表單可根據同一組 predicate 即時顯示必填標記,但仍要處理伺服器否決:使用者可能在另一個分頁改變狀態,或透過非 UI 入口寫入。把規則 name 對應到欄位錯誤,並保留尚未送出的值。

when 的 operator 與上限見 when 前置條件。設定端點見 rules.set,發布前可用 rules.preview

Last updated on