在web應用中會碰到各種欄位的校驗 比如使用者名稱 密碼 郵箱等
如果按流程順序校驗 **會很長而且很難看
這裡可以使用validator包 來幫助對字段的校驗
記錄一下 備忘
package main
import
("fmt"
validator "gopkg.in/go-playground/validator.v9"
)type user struct
func
main()
var validate = validator.
new(
) err := validate.
struct
(&user)
if err !=
nil}
}/** output
namespace: user.repeatpass
field: repeatpass
structnamespace: user.repeatpass
structfield: repeatpass
tag: eqfield
actualtag: eqfield
kind: string
type: string
value: 123456798
param: password
**/
字段
說明eq
equals 等於 包括了數值 string,slice,map的長度 下同
gtegreater than or equal 大於等於
lteless than or equal 小於等於
urlurl string url格式
ipinternet protocol address ip ip格式
e-mail string 郵箱格式
lenlength 長度 包括string slice map等
maxmaximum 字串最大長度
minminimum 字串最小長度
required
required 必填項
gtefield
field greater than or equal to another field 大於等於其他字段
ltefield
less than or equal to another field 小於等於其他字段
nefield
field does not equal another field 不等於其他字段
eqfield
field equals another field 等於其他字段
Springboot 表單驗證 Valid
springboot給我們提供了強大的表單驗證功能,為我們省去了寫驗證的麻煩。以下使用乙個簡單的註冊頁面來進行演示 1 註冊頁 doctype html html lang en head meta charset utf 8 title title title head body form act...
form的valid驗證的原理
import re import copy class validateerror exception def init self,detail self.detail detail 外掛程式 class textinput object def str self return class emai...
golang 驗證密碼(自定義驗證項)
const 密碼驗證選項 只能含有 pwd opt number uint16 1 iota 數字 0001 pwd opt lower 小寫 0010 pwd opt upper 大寫 0100 pwd opt special 特殊符號 1000 func verifypwd pwd string...