miyazi888の覚え書き日記

学習したことを書き留めてます。

Golangで構造体の配列を持つ構造体を初期化

微妙にわからなかったのでメモ代わりに。
Golangで以下のような構造があった時、初期化する方法がわからなかった。
構造体配列を持つ、構造体の時の初期化方法がわかってなかった。

type Store struct {
    Items []Item `validate:"dive"`
}

type Item struct {
    Name  string `validate:"required"` // 名前は必須
    Price int    `validate:"lte=100"`  // 値段は100以下
}

以下のようにすればよかった。

func main() {
    obj := Store{
        Items: []Item{
            {Name: "item1", Price: 99},
            {Name: "", Price: 100},
            {Name: "item3", Price: 101},
        },
    }
}