2

私は次のルートを持っています:

m.Post("/users", binding.Bind(models.User{}), func(user models.User, r render.Render)

Postまた、リクエストを実行しようとすると、次のエラー メッセージが表示されます。

「パニック: Reflect.Value.Interface: エクスポートされていないフィールドまたはメソッドから取得した値を返すことはできません」

type User struct {
    id         int
    UUID       string    `json:"uuid"`
    Username   string    `json:"userName" form:"userName" binding:"required"`
    Firstname  string    `json:"firstName" form:"Firstname" binding:"required`
    Lastname   string    `json:"lastName" form:"Lastname" binding:"required`
    Email      string    `json:"email" form:"Email" binding:"required`
    IsActive   bool      `json:"isActive"`
    DateJoined time.Time `json:"dateJoined"`
}

誰にもアイデアはありますか?

4

1 に答える 1

0

私は今問題を知っています。

問題は、User 構造体の属性「id」です。「id」の名前を「Id」に変更すると、バインド プロセスは完全に機能します。

タグform:"-"を使用すると、構造体の属性を無視できます。

type User struct {
    id         int       `form:"-"`
    UUID       string    `json:"uuid"`
    Username   string    `json:"userName" form:"userName" binding:"required"`
    Firstname  string    `json:"firstName" form:"Firstname" binding:"required`
    Lastname   string    `json:"lastName" form:"Lastname" binding:"required`
    Email      string    `json:"email" form:"Email" binding:"required`
    IsActive   bool      `json:"isActive"`
    DateJoined time.Time `json:"dateJoined"`
}
于 2015-02-02T10:39:11.097 に答える