2015-04-03 13 views
0

我在這裏舉一個例子: https://www.socketloop.com/tutorials/golang-create-new-xml-fileGolang xml元帥附加更深的項目?

如果在職員之後再走一步怎麼辦?

type Staff struct { 
XMLName xml.Name `xml:"staff"` 
ID int `xml:"id"` 
FirstName string `xml:"firstname"` 
LastName string `xml:"lastname"` 
UserName string `xml:"username"` 
Thing Thing `xml:"thing"` 
} 

我該如何追加?我已經試過這樣的事情:

v.Staffs = append(v.Staffs, Staff{ID: 108, FirstName: "Jennifer", LastName: "Loh", UserName: "jenniferloh", Thing.tape: "scotch"}) 

但是,只有使與循環遍歷兩個語句工作,其醜:

v.Staffs = append(v.Staffs, Staff{ID: 108, FirstName: "Jennifer", LastName: "Loh", UserName: "jenniferloh"}) 

v.Staffs.Thing[i] = append(v.Staffs.Thing, Thing{scotch: "tape"}) 

有沒有更好的方式來做到這一點?謝謝。

回答

0
type Thing struct { 
    stuff string `xml:"stuff"` 
} 

type Staff struct { 
    XMLName xml.Name `xml:"staff"` 
    ID int `xml:"id"` 
    FirstName string `xml:"firstname"` 
    LastName string `xml:"lastname"` 
    UserName string `xml:"username"` 
    Thing Thing `xml:"thing"` 
} 

stuff := Thing{Stuff: "120"} 
v.Staffs = append(v.Staffs, Staff{ID: 108, FirstName: "Jennifer", LastName: "Loh", UserName: "jenniferloh", Thing: stuff})