struct datastore.Entity看起来非常有用,这就是我想要处理实体的方式,但我没有看到任何使用它的 API。大多数函数(例如Get)都采用一个that 只有当它是结构与传入数据一样精确的interface{}
结构时才似乎有效。
// https://godoc.org/cloud.google.com/go/datastore#Client.Get
ctx := context.Background()
client, err := datastore.NewClient(ctx, "project-id")
if err != nil {
// TODO: Handle error.
}
type Article struct {
Title string
Description string
Body string `datastore:",noindex"`
Author *datastore.Key
PublishedAt time.Time
}
key := datastore.NameKey("Article", "articled1", nil)
article := &Article{}
if err := client.Get(ctx, key, article); err != nil {
// TODO: Handle error.
}
我将如何以通用方式获得该实体?如果我不完全了解结构怎么办?(更具体地说,我如何获得 instead 的实例datastore.Entity?)
翻翻过去那场雪
相关分类