我正在尝试从我的 GCP Firestore 集合中获取一组文档,其中查询文档 ID 在字符串数组中。我看到它可以与其他语言一起使用,但我找不到 Golang 的解决方案。我正在尝试以下操作:Collection("myCollection").Where(firestore.DocumentID, "in", []string{"id1", "id2", "id3"}).Documents(ctx)但我有以下错误:{ "code": 3, "message": "__key__ filter value must be a Key"}我认为将文档 id 保存为文档本身的字段不是最佳做法,但它会降低查询的复杂性,这将是一种解决方法。你怎么看 ?有什么建议吗?
1 回答
冉冉说
TA贡献1877条经验 获得超1个赞
使用Client.GetAll通过 id 获取多个文档。
var drs []*firestore.DocRef
for _, id := range []string{"id1", "id2", "id3"} {
drs = append(drs, cr.Doc(id))
}
snaps, err := client.GetAll(ctx, drs)
- 1 回答
- 0 关注
- 113 浏览
添加回答
举报
0/150
提交
取消