表單數(shù)據(jù)驗(yàn)證

安裝

go get github.com/astaxie/beego/validation

測(cè)試是否安裝成功

go test github.com/astaxie/beego/validation
如果輸出如下則表示成功:

image.png

code

package controllers

import (
    "fmt"
    "github.com/astaxie/beego"
    "github.com/astaxie/beego/validation"
)

type ValidController struct {
    beego.Controller
}

// 關(guān)閉ValidController的xsrf保護(hù)
func (this *ValidController) Prepare()  {
    this.EnableXSRF = false

}

func (this *ValidController)Get()  {
    this.TplName = "validate.html"
}
func (this *ValidController)Post() {
     uname :=this.GetString("uname")
       pwd :=this.GetString("pwd")
       fmt.Println(uname)
       fmt.Println(pwd)

       valid :=validation.Validation{}
       valid.Required(uname,"uname").Message("用戶名不能為空")
       valid.Required(pwd,"pwd").Message("密碼不能為空")
// 打印錯(cuò)誤
       if valid.HasErrors() {
           for _, err := range valid.Errors {
               fmt.Println(err.Key)
               fmt.Println(err.Message)
           }
       }
 this.TplName = "validate.html"

ruter

beego.Router("/valid", &controllers.ValidController{})

html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>validate</title>
</head>
<body>
<h1>這是validate頁(yè)面</h1>
<form action="{{urlfor "ValidController.Post"}}" method="post" >
    用戶名:<input type="text" name="uname" id="uname"><br>
    密&nbsp;&nbsp;碼:<input type="password" name="pwd" id="pwd"><br>
    <input type="submit" id="btn" value="提交">
</form>
</body>
</html>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容