<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                這里主要整理了 gin 常用的表單參數驗證語法,方便開發者快速查詢最常用的語法。 gin的表單參數驗證語法引用了第三方包:[https://github.com/go-playground/validator](https://github.com/go-playground/validator) #### 1.基本語法示例,我們以用戶注冊的結構體為例進行示范說明 ``` type Register struct { UserName string `form:"user_name" json:"user_name" binding:"required,min=1"` Pass string `form:"pass" json:"pass" binding:"required,min=6,max=20"` Phone string `form:"phone" json:"phone"` CardNo string `form:"card_no" json:"card_no"` } ``` 在以上結構體中: `form`:表示驗證 form 表單提交的字段。 `json`:表示通過 json 方式(postman中就是 raw 方式,本質仍然是 application/json 編碼方式)提交的數據字段。 `binding`:任何需要驗證的字段首先需要設置 binding 標簽,然后指定語法。 注意:在 ginskeleton 中,json 標簽是必須都要指定的,因為 ginskeleton 依賴于 json 標簽后續做了參數綁定到上下文的功能,form 標簽只有表單參數以 form-data 方式提交時是必須的。 #### 2.常用的驗證語法清單 ![](https://img.kancloud.cn/81/01/8101c699f25e99b3106dffd3731f9d34_1065x663.png) ![](https://img.kancloud.cn/84/9f/849f81b7dad9ca5e855efddd296dd460_1141x616.png) 備注: 多個驗證規則可以同時使用,使用時使用逗號(,)分割語法。 #### 2.復雜表單參數驗證,主要是結構體嵌套結構體方式(客戶端往往以 raw 、application/json 方式提交) ``` type Demo struct { No int `form:"no" json:"no" binding:"required"` Title string `form:"title" json:"title" binding:"required"` List []List `form:"artitle_list" json:"artitle_list" binding:"required,min=2,dive"` } // 以下結構體被嵌套 type List struct { SubTitle string `form:"sub_title" json:"sub_title" binding:"required"` Remark string `json:"remark" binding:"required"` } ``` 在以上結構體中我們解釋幾個關鍵點: `List`:對應的 min 表示該數組至少有2個成員結構體(對象) `dive`:表示深入該數組內部繼續驗證每一個結構體對應的字段。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看