【发布时间】:2015-09-13 11:48:34
【问题描述】:
Go 中是否可以从结构本身检索 reflect.Type?
伪:
type MyStruct struct {
Name string
}
type := reflect.TypeOf(MyStruct)
之后是否可以制作该类型的切片?
更新:
我知道reflect.TypeOf((*t1)(nil)).Elem() 这个问题的解决方案。我正在寻找一个更好的解决方案,因为这在我看来非常不友好。我会试着解释一下情况。
在开发数据库模型之上的“通用”数据服务时,我想做一些类似的事情:
ds := NewDataService(db.Collection("MyStruct"), MyStruct)
DataService 能够使用该模型进行查找、插入等操作。因此我需要传递结构,以便模型可以正确使用(例如与 http 服务器)。
第二部分是必需的,因为Find 应该返回找到的对象的切片。
因为我使用的是 Mongo,所以在 db.Collection
中没有像 schema 这样可用的东西【问题讨论】:
标签: reflection go