获取Firestore文档的值

问题描述 投票:0回答:1

我正在尝试使用Firestore作为后端来存储文档数据。Firestore对

的回复
docs, _ := q.Documents(ctx).GetAll()

是类型

var docs []*firestore.DocumentSnapshot

假设我的文档具有结构

map[array:[a b] text:bla]

如何访问*firestore.DocumentSnapshot中的值?

我看到结果时

for _, doc := range docs {
    fmt.Println(doc.Data())
}

执行并打印

map[array:[a b] text:bla]
func g() {
    ctx := context.Background()
    client, _ := firestore.NewClient(ctx, "myapp")

    defer client.Close()

    q := client.Collection("my").
        Limit(10)

    docs, _ := q.Documents(ctx).GetAll()

    for _, doc := range docs {
        fmt.Println(doc.Data())
    }
}

我想在我的应用程序的一部分结构中使用http模板中的值。

go google-cloud-firestore go-templates
1个回答
0
投票

您可以使用doc.DataTo直接将其转换为结构体>

示例:

var articles []ArticleModel // slice
var model ArticleModel
    if err := doc.DataTo(&model); err != nil {
            // TODO: Handle error.
    }
articles = append(articles, model)
© www.soinside.com 2019 - 2024. All rights reserved.