2
例如User的Name属性
type User struct {
Id int64 gconv:"id"
Name string json:"userName" gconv:"user_name"
}
希望json输出的是userName 对应数据库的字段名是user_name
例如User的Name属性
type User struct {
Id int64 gconv:"id"
Name string json:"userName" gconv:"user_name"
}
希望json输出的是userName 对应数据库的字段名是user_name
@hailaz 你这个issue特别不规范,我不是特别清楚你的问题,我记得好像是可以解决的,你把示例代码贴上来吧。
//如果用 (r *Response) WriteJson函数输出json,将会用gconv的tag进行字段名转换。
type UserTemp struct {
Id int64 json:"id"
//
Status int json:"status"
//
UserName string json:"userName" gconv:"user_name"
//
}
func Teee() { u := UserTemp{} r, _ := defDB.Table("user").One() r.ToStruct(&u)
jsonBytes, _ := json.Marshal(u)
fmt.Println(string(jsonBytes)) //{"id":50,"status":0,"userName":"admin"}
b, _ := gparser.VarToJson(u)//github.com\gogf\gf@v1.6.15\g\net\ghttp\ghttp_response.go:78 (r *Response) WriteJson(content interface{})
fmt.Println(string(b)) //{"id":50,"status":0,"user_name":"admin"}
}
@johngcn 忘记@了
@johngcn 再发一遍,,刚刚格式异常。 如果用 (r *Response) WriteJson函数输出json,将会用gconv的tag进行字段名转换。
type UserTemp struct {
Id int64 `json:"id"` //
Status int `json:"status"` //
UserName string `json:"userName" gconv:"user_name"` //
}
func Teee() {
u := UserTemp{}
r, _ := defDB.Table("user").One()
r.ToStruct(&u)
jsonBytes, _ := json.Marshal(u)
fmt.Println(string(jsonBytes)) //{"id":50,"status":0,"userName":"admin"}
b, _ := gparser.VarToJson(u)//github.com\gogf\gf@v1.6.15\g\net\ghttp\ghttp_response.go:78 (r *Response) WriteJson(content interface{})
fmt.Println(string(b)) //{"id":50,"status":0,"user_name":"admin"}
}
@hailaz 已改进,下一版本发布。
@hailaz 已发布