我已经创建了一个基于字符串的类型Role,现在我正在尝试通过实现Valuer和Scanner接口来使它与数据库驱动程序一起工作。
type Role string
func (r *Role) Scan(value interface{}) error {
r = (*Role)(value.(string))
return nil
}
func (r *Role) Value(value driver.Value, err error) {
if err != nil {
value = string(r)
}
}
我一直收到这个错误:
The Go code app/entities/user.go does not compile: cannot convert value.(string) (type string) to type *Role
我在这里做错了什么?
func (r *Role) Value(value driver.Value, err error) { if err != nil { value = string(*r) } }
- Leevalue.(string)
。 - Lee