如果有天使用者隨便輸入的資料都能直接進資料庫,那資料庫還是省省不要建好了(這真的母湯!怕),作為一個負責任但不想加班的工程師,資料在進資料庫前還是要自動化驗證一下,今天來看怎麼在低代碼平台上自動驗證資訊。
在Mendix上主要有三個位置,能在資料被寫進資料庫前做自動化驗證,一種在domain model裡寫好需要驗證的部分,另一種是走microflows流程來自動驗證,最後一種是在頁面上做自動驗證。
前者主要注重於domain model裡各物件的屬性(attributes)設定,此設定會影響整個應用程式,涵蓋最全面。做microflows驗證,可限定要驗證的部分,也能侷限於應用程式的某些地方,比domain model更容易更新。在頁面上設定驗證的方法不多且僅限於該頁面使用。
可進行驗證的項目如下:
必要性: 此資料處不可為空白,例如: email地址
獨特性: 資料的內容不可以與其他資料相同,例如: 身分證ID
一致性: 再次輸入的資料與之前的資料一致,例如: 確認輸入的密碼
範圍: 資料須在設定的範圍裡面,例如: 月份只有1~12
正規表達式: 資料符合正規表達式的規則,例如: email格式
長度極限: 資料不可超過多少字長,例如: 電話號碼長度
到domain model的頁面在想要設定驗證的物件上,點滑鼠左鍵兩下,會看到以下的畫面,之後前往Validation rules。
在Validation rules新增新的驗證規則
在新增的驗證規則裡,選擇想要套用驗證規則的屬性(attribute)後,點選想要套用何種驗證規則,一個屬性可套用多種驗證規則。
溫馨提醒,選擇Regular express的話需另外撰寫Regex。 Regex101好用不解釋
寫法範例:
5.在使用者將錯誤排除後,我們要讓資料繼續輸入進資料庫裡,這就需要merge的幫忙。
但這樣就完成了嗎? 如果這樣想就太天真了,這樣的資料雖然有錯誤但還是會被寫進資料庫中,那驗證流程就是做心酸的...要避免這種情形,我們需要另外建立控制用的變數,只有在變數的內容為true時,資料才能被寫入資料庫中。
在一開始創立變數時設定為true
在每一次資料不符合驗證時,將變數改為
最後確認變數是否為true
這樣就完成了!!
在需要的物件上點左鍵兩下便能夠進行驗證項目的設定。
總結,輸入資料時多一分鐘做自動化驗證,之後才有完整的資料庫可以用!!