Go 插入自定义时间,实施扫描仪和估价师—;但仍有错误

Go 插入自定义时间,实施扫描仪和估价师—;但仍有错误,go,go-gorm,Go,Go Gorm,我有一个自定义时间格式,它是一些自定义解组的结果: type customTime struct { time.Time } 我已经在这个customTime上实现了Scanner和Valuer界面,如下所示: func (ct *customTime) Scan(value interface{}) error { ct.Time = value.(time.Time) return nil } func (ct *customTime) Value() (driv

我有一个自定义时间格式,它是一些自定义解组的结果:

type customTime struct {
    time.Time
}
我已经在这个
customTime
上实现了
Scanner
Valuer
界面,如下所示:

func (ct *customTime) Scan(value interface{}) error {
    ct.Time = value.(time.Time)
    return nil
}

func (ct *customTime) Value() (driver.Value, error) {
    return ct.Time, nil
}
但当我尝试插入时仍然会出错:

sql:转换Exec参数$3类型:不支持的类型main.customTime,结构


我遗漏了什么?

找到了解决方案,
扫描仪和
估价师应在实际值上实现,而不是指向
自定义时间的指针

func (ct customTime) Scan(value interface{}) error {
    ct.Time = value.(time.Time)
    return nil
}

func (ct customTime) Value() (driver.Value, error) {
    return ct.Time, nil
}