From 49ef4fd2666425b4576353b8ae65f0602f70e4f2 Mon Sep 17 00:00:00 2001 From: John Date: Sat, 6 Jul 2019 15:02:02 +0800 Subject: [PATCH] add more example for gconv.Map --- TODO.MD | 1 - geg/util/gconv/gconv_map_tag.go | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 geg/util/gconv/gconv_map_tag.go diff --git a/TODO.MD b/TODO.MD index e2991895c..357d77c94 100644 --- a/TODO.MD +++ b/TODO.MD @@ -50,7 +50,6 @@ 1. grpool增加支持阻塞添加任务接口; 1. gdb.Model在链式安全的对象创建中增加sync.Pool的使用; 1. 增加g.Table快捷方法以方便操作数据表,但是得考虑后续模型操作设计,特别是脚手架的模型管理; -1. 数据库ORM增加对字段到struct属性的自动映射匹配关系文档说明; # DONE 1. gconv完善针对不同类型的判断,例如:尽量减少sprintf("%v", xxx)来执行string类型的转换; diff --git a/geg/util/gconv/gconv_map_tag.go b/geg/util/gconv/gconv_map_tag.go new file mode 100644 index 000000000..b7f653e44 --- /dev/null +++ b/geg/util/gconv/gconv_map_tag.go @@ -0,0 +1,18 @@ +package main + +import ( + "github.com/gogf/gf/g" + "github.com/gogf/gf/g/util/gconv" +) + +func main() { + type User struct { + Id int `json:"uid"` + Name string `my-tag:"nick-name" json:"name"` + } + user := &User{ + Id: 1, + Name: "john", + } + g.Dump(gconv.Map(user, "my-tag")) +}