#Error #01: json: unsupported type: func() time.Time
如何解决这个问题?各位
代码
```go
func GetUserById(c *gin.Context) {
id:=c.Query("user_id")
fmt.Println(id)
if id =="" {
c.JSON(http.StatusBadRequest,gin.H{
"info":"你输入了啥啊,这是?"+id,
})
}
data:=utils.DB.First(&system.UserBasic{},id)
c.JSON(http.StatusOK,data)
}
type UserBasic struct {
gorm.Model
Name string
PassWord string
AvatarUrl string
Phone string
Email string
}
type Model struct {
ID uint `gorm:"primarykey"`
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt DeletedAt `gorm:"index"`
}
```
First() 方法返回值的类型是 *gorm.DB, 你不能用 First的返回值,来传递给 JSON方法
你看你第二个其实也没有用到这个返回值对吧,你可以 直接 定义一个 变量来使用也行
var data system.UserBasic
utils.DB.First(&data,id) // 这个返回结果是为了判断是否成功的把,如果返回 result ,判断 result.Error 来看是否有错误返回
经过又一次次的尝试,发现使用make函数就可以解决了,不知道为什么,有各位愿意分享原因的吗
```go
func GetUserById(c *gin.Context) {
id:=c.Query("user_id")
fmt.Println(id)
if id =="" {
c.JSON(http.StatusBadRequest,gin.H{
"info":"你输入了啥啊,这是?"+id,
})
}
data:=make([]*system.UserBasic,1)
utils.DB.First(&data,id)
c.JSON(http.StatusOK,data)
}
```