最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

gin使用自定義結(jié)構(gòu)綁定表單數(shù)據(jù)的示例代碼

 更新時(shí)間:2020年11月02日 15:42:01   作者:晨夢(mèng)~思雨  
這篇文章主要介紹了gin使用自定義結(jié)構(gòu)綁定表單數(shù)據(jù)的示例代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

以下示例使用自定義結(jié)構(gòu)

type StructA struct {
  FieldA string `form:"field_a"`
}
 
type StructB struct {
  NestedStruct StructA
  FieldB string `form:"field_b"`
}
 
type StructC struct {
  NestedStructPointer *StructA
  FieldC string `form:"field_c"`
}
 
type StructD struct {
  NestedAnonyStruct struct {
    FieldX string `form:"field_x"`
  }
  FieldD string `form:"field_d"`
}
 
func GetDataB(c *gin.Context) {
  var b StructB
  c.Bind(&b)
  c.JSON(200, gin.H{
    "a": b.NestedStruct,
    "b": b.FieldB,
  })
}
 
func GetDataC(c *gin.Context) {
  var b StructC
  c.Bind(&b)
  c.JSON(200, gin.H{
    "a": b.NestedStructPointer,
    "c": b.FieldC,
  })
}
 
func GetDataD(c *gin.Context) {
  var b StructD
  c.Bind(&b)
  c.JSON(200, gin.H{
    "x": b.NestedAnonyStruct,
    "d": b.FieldD,
  })
}
 
func main() {
  r := gin.Default()
  r.GET("/getb", GetDataB)
  r.GET("/getc", GetDataC)
  r.GET("/getd", GetDataD)
 
  r.Run()
}

運(yùn)行示例:

$ curl "http://localhost:8080/getb?field_a=hello&field_b=world"
{"a":{"FieldA":"hello"},"b":"world"}
$ curl "http://localhost:8080/getc?field_a=hello&field_c=world"
{"a":{"FieldA":"hello"},"c":"world"}
$ curl "http://localhost:8080/getd?field_x=hello&field_d=world"
{"d":"world","x":{"FieldX":"hello"}}

 

注意:不支持以下樣式結(jié)構(gòu)

type StructX struct {
  X struct {} `form:"name_x"` // HERE have form
}
 
type StructY struct {
  Y StructX `form:"name_y"` // HERE have form
}
 
type StructZ struct {
  Z *StructZ `form:"name_z"` // HERE have form
}

總之,現(xiàn)在只支持現(xiàn)在沒(méi)有form標(biāo)簽的自定義結(jié)構(gòu)

到此這篇關(guān)于gin使用自定義結(jié)構(gòu)綁定表單數(shù)據(jù)的示例代碼的文章就介紹到這了,更多相關(guān)gin綁定表單數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Golang分布式應(yīng)用定時(shí)任務(wù)示例詳解

    Golang分布式應(yīng)用定時(shí)任務(wù)示例詳解

    這篇文章主要為大家介紹了Golang分布式應(yīng)用定時(shí)任務(wù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 淺析Golang中Gin框架存在的必要性

    淺析Golang中Gin框架存在的必要性

    在Go語(yǔ)言中,net/http?包提供了一個(gè)強(qiáng)大且靈活的標(biāo)準(zhǔn)HTTP庫(kù),那為什么還出現(xiàn)了像?Gin?這樣的,方便我們構(gòu)建Web應(yīng)用程序的第三方庫(kù),下面就來(lái)和大家簡(jiǎn)單分析一下
    2023-08-08
  • Golang測(cè)試func?TestXX(t?*testing.T)的使用詳解

    Golang測(cè)試func?TestXX(t?*testing.T)的使用詳解

    一般Golang中的測(cè)試代碼都以xxx_test.go的樣式,在命名測(cè)試函數(shù)的時(shí)候以Testxx開(kāi)頭,下面給大家介紹Golang測(cè)試func?TestXX(t?*testing.T)的使用,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • 在Go語(yǔ)言中實(shí)現(xiàn)DDD領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)實(shí)例探究

    在Go語(yǔ)言中實(shí)現(xiàn)DDD領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)實(shí)例探究

    本文將詳細(xì)探討在Go項(xiàng)目中實(shí)現(xiàn)DDD的核心概念、實(shí)踐方法和實(shí)例代碼,包括定義領(lǐng)域模型、創(chuàng)建倉(cāng)庫(kù)、實(shí)現(xiàn)服務(wù)層和應(yīng)用層,旨在提供一份全面的Go DDD實(shí)施指南
    2024-01-01
  • golang?gorm更新日志執(zhí)行SQL示例詳解

    golang?gorm更新日志執(zhí)行SQL示例詳解

    這篇文章主要為大家介紹了golang?gorm更新日志執(zhí)行SQL示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04
  • 詳解如何利用GORM實(shí)現(xiàn)MySQL事務(wù)

    詳解如何利用GORM實(shí)現(xiàn)MySQL事務(wù)

    為了確保數(shù)據(jù)一致性,在項(xiàng)目中會(huì)經(jīng)常用到事務(wù)處理,對(duì)于MySQL事務(wù)相信大家應(yīng)該都不陌生。這篇文章主要總結(jié)一下在Go語(yǔ)言中Gorm是如何實(shí)現(xiàn)事務(wù)的;感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助
    2022-09-09
  • go語(yǔ)言中的數(shù)組指針和指針數(shù)組的區(qū)別小結(jié)

    go語(yǔ)言中的數(shù)組指針和指針數(shù)組的區(qū)別小結(jié)

    本文主要介紹了go語(yǔ)言中的數(shù)組指針和指針數(shù)組的區(qū)別小結(jié),文中通過(guò)示例代碼介紹的很詳細(xì),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-10-10
  • 淺析Go語(yǔ)言中的緩沖區(qū)及其在fmt包中的應(yīng)用

    淺析Go語(yǔ)言中的緩沖區(qū)及其在fmt包中的應(yīng)用

    這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中的緩沖區(qū)及其在fmt包中的應(yīng)用的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2024-01-01
  • GoLang內(nèi)存模型詳細(xì)講解

    GoLang內(nèi)存模型詳細(xì)講解

    go官方介紹go內(nèi)存模型的時(shí)候說(shuō):探究在什么條件下,goroutine 在讀取一個(gè)變量的值的時(shí),能夠看到其它 goroutine 對(duì)這個(gè)變量進(jìn)行的寫(xiě)的結(jié)果,Go內(nèi)存模型規(guī)定了一些條件,在這些條件下,在一個(gè)goroutine中讀取變量返回的值能夠確保是另一個(gè)goroutine中對(duì)該變量寫(xiě)入的值
    2022-12-12
  • 在Go中動(dòng)態(tài)替換SQL查詢中的日期參數(shù)的完整步驟

    在Go中動(dòng)態(tài)替換SQL查詢中的日期參數(shù)的完整步驟

    在處理數(shù)據(jù)庫(kù)查詢時(shí),經(jīng)常需要根據(jù)不同的輸入條件動(dòng)態(tài)地構(gòu)造SQL語(yǔ)句,尤其是在涉及日期范圍的查詢中,能夠根據(jù)實(shí)際需求調(diào)整查詢的起始和結(jié)束日期顯得尤為重要,在本文中,我將介紹如何在Go語(yǔ)言中實(shí)現(xiàn)動(dòng)態(tài)替換SQL查詢中的日期參數(shù),需要的朋友可以參考下
    2024-11-11

最新評(píng)論

乐都县| 宜兴市| 吴堡县| 紫阳县| 铜川市| 铜川市| 成安县| 峨山| 连山| 忻城县| 呼伦贝尔市| 绩溪县| 达拉特旗| 上林县| 井陉县| 瑞安市| 科尔| 屏南县| 阿勒泰市| 蒙自县| 天镇县| 鄂州市| 泽普县| 芷江| 凤城市| 错那县| 铜鼓县| 广元市| 汝南县| 昭平县| 工布江达县| 衡阳市| 麻栗坡县| 巴彦淖尔市| 凌源市| 简阳市| 旬邑县| 北碚区| 勐海县| 姜堰市| 保康县|