范围超过结构的一部分

我有一个结构,其中包含一个结构的一部分,而我正在尝试从内部结构中检索数据。这是该结构的示例:

type Data struct {
    Quotes []struct {
        Direct      bool    `json:"Direct"`
        Legs struct {
            ID int    `json:"Id"`
        } `json:"Legs"`
    }
}

从上面的代码中,我想检索ID中的值。这是我已经尝试过的:

    for _,v := range Data.Quotes.Legs {
        fmt.Println(v.ID)
    }

但是出现以下错误:

 Has no field or method Legs

如果我只想要Direct中的值,这会起作用:

    for _,v := range Data.Quotes {
        fmt.Println(v.Direct)
    }

有人对此有建议吗?

jizhixue 回答:范围超过结构的一部分

Data.Quotes.Legs不是数组。 Data.Quotes是:

var data Data
...
for _,v := range data.Quotes {
        fmt.Println(v.Legs.ID)
}
本文链接:https://www.f2er.com/3127511.html

大家都在问