Python 已经回答了这个问题: How to get all records from GAE datastore with particular parent?
我如何在 Go 中执行此操作?我想做类似的事情:
t := new(TagRecord)
k, err := datastore.DecodeKey(r.URL.Path[1:])
...
_, err = datastore.NewQuery("TagRecord").
Filter("Parent =", k).
Order("-CreatedAt").
Limit(1).
Run(c).Next(t)
...但是由于以下错误而惨败:
datastore: query has no more results
当我尝试按其他属性(包括那些硬编码到过滤器中的属性和那些通过 URL 传递的属性)进行过滤时,查询会正常运行并使用正确的属性填充 t。我的问题能以多么简单的方式得到解决?
最佳答案
这里让您感到困惑的是父查询不使用 Filter()。相反,您使用 ancestor constraint :
q := datastore.NewQuery("TagRecord").
Ancestor(k).
Order("-CreatedAt").
Limit(1)
// etc...
关于google-app-engine - 按父实体过滤数据存储结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11658214/