W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
?Struct
?的屬性會(huì)有默認(rèn)值,在某些情況下會(huì)引起?required
?規(guī)則的失效。例如:
type User struct {
Name string `v:"required"`
Age uint `v:"required"`
}
在該結(jié)構(gòu)體校驗(yàn)中,?Age
?屬性的?required
?校驗(yàn)將會(huì)失效,因?yàn)?Age
?即便沒(méi)有輸入也會(huì)有默認(rèn)值?0
?。
這里有三種解決方案:
Struct
?校驗(yàn)的?Assoc
?聯(lián)合校驗(yàn)方法設(shè)置聯(lián)合校驗(yàn)參數(shù),在校驗(yàn)?Struct
?類型參數(shù)時(shí),參數(shù)值將以?Assoc
?方法中給定的參數(shù)為準(zhǔn)執(zhí)行校驗(yàn)。required
?規(guī)則,例如以上示例中將?Age
?屬性的校驗(yàn)規(guī)則修改為?required|min:1
?將能達(dá)到業(yè)務(wù)校驗(yàn)的效果。*int
?、?*float64
?、?*g.Var
?等,通過(guò)指針類型默認(rèn)值為?nil
?的特點(diǎn)繞過(guò)了這個(gè)問(wèn)題。Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: