/ Problème d'assertion de type / Golang - aller

Problème d'assertion de type Golang - aller

J'essaie d'appeler cette fonction Gorp http://godoc.org/github.com/coopernurse/gorp#DbMap.Get

Je fais ça:

       // ClassType
obj, err := c.Gorp.Get(entities.ClassType{}, class.ClassTypeCode)
if err != nil {
panic(err)
}
class.ClassType = obj.(*entities.ClassType)  <<<<<<<<< Error here

Ma classe ressemble à ceci:

package entities

import (
"time"
)

type Class struct {
Id                int
ClassTypeCode     string
VideoPath         string
VideoSize         int
Duration          float64
CreatedAt         time.Time
VisibleAt         time.Time
NoLongerVisibleAt time.Time

// Relationships
ClassType  ClassType
Instructor User
Equipment  []Equipment
}

Je continue à recevoir ce message d'erreur: conversion d'interface: l'interface est * entités.ClassType, pas entités.ClassType

Si je change de code pour:

            // ClassType
obj, err := c.Gorp.Get(entities.ClassType{}, class.ClassTypeCode)
if err != nil {
panic(err)
}
class.ClassType = obj.(*entities.ClassType)

Je reçois alors ce message:

cannot use obj.(*entities.ClassType) (type *entities.ClassType) as type entities.ClassType in assignment

Qu'est-ce que je fais mal?

Réponses:

2 pour la réponse № 1
class.ClassType = *obj.(*entities.ClassType)