我目前正在从数据存储中请求 20 个条目,使用游标将这些条目返回给用户,如果用户要求更多条目,请使用游标作为新的开始并请求接下来的 20 个条目。代码看起来像q := datastore.NewQuery("Item"). Limit(limit)if cursor, err := datastore.DecodeCursor(cursor); err == nil { q = q.Start(cursor)}var is []Itemt := q.Run(c)for { var i Item _, err := t.Next(&i) if err == datastore.Done { break } is = append(is, i)}如果重要的是这里是完整的代码:https : //github.com/koffeinsource/kaffeeshare/blob/master/data/appengine.go#L23使用带有 的循环看起来是一种反模式append,但是在使用GetMulti/GetAll时我没有看到获取光标的方法,或者我是否遗漏了什么?我确实希望在用户查询数据存储时添加数据,因此偏移量可能会产生重复的结果。在这种情况下,我应该关心批处理吗?
1 回答
- 1 回答
- 0 关注
- 174 浏览
添加回答
举报
0/150
提交
取消