我正在嘗試從我的 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 關注
- 133 瀏覽
添加回答
舉報
0/150
提交
取消