gosqlboiler

Data binding in go using sqlBoiler


I am fetching some data from MYSQL database.. Using query data is getting correclty (eg 10 rows)

I want to bind into a list of model for displaying.

But panic error displaying

type UserDetails []UserDetail
type UserDetail struct {
    id             string    `json:"id" boil:",bind"`
    ScreenName     string    `json:"screenName" boil:",bind" `
}


func (m *mysqlStore) GetUsersDetails(ctx context.Context) () {
    var userDetails []*models.UserDetail
    err := queries.Raw(`
                SELECT
            user.id,
            user.screen_name
            FROM user
    group by user.id
    `).Bind(ctx, m.db, &userDetails)
    if err != nil {
        fmt.Println(err)
    }
    fmt.Println(userDetails)
}

here using the MYSQLQuery i am getting the correct data. I want to display that in a list of arrary eg:

[
 {"id":"1",
   "screenName":"test"},
 {"id":"2",
   "screenName":"test"}
]

what is the issue in my go code?


Solution

  • I got the Answer

    In this case struct must be

    type UserDetail struct {
        id             string    `json:"id"`
        ScreenName     string    `json:"screenName"`  
    }
    

    and

     var userDetails []models.UserDetail