I’m trying to load a list of roles and their members from a RestAPI in GO.
Handler:
func RolesHandler(w http.ResponseWriter, r *http.Request) {
var roles []Role
var queryError = database.Model(&Role{}).
Preload("Players").
Find(&roles).
Error
if queryError != nil {
log.Fatalln(queryError)
return
}
w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(roles)
}
I get
[2024-04-25 07:57:06] can't preload field Players for main.Role
2024/04/25 07:57:06 can't preload field Players for main.Role
exit status 1
exit 1
Here are my structs:
type PlayerRole struct {
ID int64 `json:"id" gorm:"primary_key"`
PlayerId int64 `json:"player_id"`
Player Player `json:"player"`
RoleId int64 `json:"role_id"`
Role Role `json:"data" gorm:"many2many:player_role;"`
}
type Role struct {
ID int64 `json:"id" gorm:"primary_key"`
Name string `json:"name"`
Players []Player `json:"players"`
}
type Tabler interface {
TableName() string
}
func (PlayerRole) TableName() string {
return "player_role"
}