我发现自己需要做一个GetMulti
使用键数组进行操作,其中某些实体存在,但有些实体不存在。
我当前的代码(如下)返回错误(datastore: no such entity
).
err := datastore.GetMulti(c, keys, infos)
那么我该怎么做呢?我会使用“获取或插入”方法,但没有一种方法。
GetMulti 可以返回一个appengine.MultiError https://godoc.org/google.golang.org/appengine#MultiError在这种情况下。循环遍历并寻找datastore.ErrNoSuchEntity https://godoc.org/google.golang.org/appengine/datastore#pkg-variables。例如:
if err := datastore.GetMulti(c, keys, dst); err != nil {
if me, ok := err.(appengine.MultiError); ok {
for i, merr := range me {
if merr == datastore.ErrNoSuchEntity {
// keys[i] is missing
}
}
} else {
return err
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)