如何将 FaunaDB 的 Time 类型数据映射到 go lang 变量?

How to map Time type data of FaunaDB to the go lang variable?

我坚持处理 faunaDB 的时间类型数据。我不知道哪种类型的golang适合映射到faunaDB的时间类型数据。

我已尝试使用以下代码创建动物群文件:

type LabelData struct {
    RedirectURL   string `fauna:"redirectURL"`
    Owner         string `fauna:"owner"`
    RedirectCount int    `fauna:"redirectCount"`
    ExternalID    string `fauna:"externalID"`
    Tag           string `fauna:"Tag"`
    Created       int64  `fauna:created`
}

func faunaCreate(externalID string) (err error) {
    var documentRef f.RefV
    labelData := LabelData{
        RedirectURL:   "",
        Owner:         "",
        RedirectCount: 0,
        ExternalID:    externalID,
        Created:       f.ToMillis(f.Time("now")),
    }
    newlabel, err := client.Query(
        f.Create(
            f.Collection("label"),
            f.Obj{"data": labelData},
        ),
    )

但出现如下错误:

cannot use faunadb.ToMillis(faunadb.Time("now")) (type faunadb.Expr) as type int64 in field value

我应该为 faunaDB 时间类型使用 golang 的哪种数据类型?感谢您的建议!

嗯,发生错误是因为您正在尝试将 faunadb.Expr 类型初始化为 int64 变量。

因此您可以更改 Created 变量的类型。 make 是 faunadb.Exprinterface{}.

type LabelData struct {
    RedirectURL   string `fauna:"redirectURL"`
    Owner         string `fauna:"owner"`
    RedirectCount int    `fauna:"redirectCount"`
    ExternalID    string `fauna:"externalID"`
    Tag           string `fauna:"Tag"`
    Created       interface{}  `fauna:created`
}

在你的结构中使用常规的 go 类型 time.Time