猿问

如何在Echo框架中绑定多部分/表单数据数组?

我正在使用颤振和Go Echo框架编写一个api服务器,我想从颤动到Go发送数据并保存它,但在Go中不起作用:c.bind()


type _getData struct {

    Title    string      `json:"title" form:"title"`

    Address  string      `json:"address" form:"address"`

    Location string      `json:"location" form:"location"`

    MapId    uint        `json:"map_id" form:"map_id"`

    Date     _customTime `json:"date" form:"date"`

    Pages    []struct {

        Order       int    `json:"order" form:"order"`

        Description string `json:"description" form:"description"`

    } `json:"pages" form:"pages"`

    Tags []struct {

        TagName string `json:"tag_name" form:"tag_name"`

        ID      string `json:"id" form:"id"`

    } `json:"tags" form:"tags"`

}


type _customTime struct {

    time.Time

}

创建一个结构,如上面的代码所示,并按如下所示进行绑定:


d := &echo.DefaultBinder{}

var aa _getData

d.Bind(&aa, c)

fmt.Println(c.Request().Form)

fmt.Println(aa)

----- fmt.Println(c.Request().Form)'s result is -----

ap[address:[미국 캘리포니아 산타클라라 카운티 쿠퍼티노 ] date:[2021-10-01] location: 

[37.330672396748554 -122.03014377504589] pages[0][description]:[123123] pages[0] 

[order]:[0] tags[0][tag_name]:[sdf] title:[123123]]


----- fmt.Println(aa)'s result is -----

{123123 미국 캘리포니아 산타클라라 카운티 쿠퍼티노  37.330672396748554 -122.03014377504589 0 

2021-10-01 00:00:00 +0900 KST [] []}

页面和标记数据未绑定。其他字段是绑定的,但为什么不只是多数组字段?如何绑定?我是初学者,任何建议将不胜感激。


天涯尽头无女友
浏览 112回答 1
1回答

POPMUISE

Echo 框架不支持从现成的表单数据绑定数组。您可以改用 json 或使用第三方库。查看实施或发布和 github 问题 https://github.com/labstack/echo/issues/1644
随时随地看视频慕课网APP

相关分类

Go
我要回答