0

我一直在处理动物数据库的时间类型数据。我不知道哪种类型的 golang 适合映射到动物数据库的时间类型数据。

我尝试了以下代码来创建动物文件:

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

我应该将 golang 的哪种数据类型用于 animalDB Time 类型?谢谢你的建议!

4

2 回答 2

1

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

所以你可以改变Createdvar的类型。make isfaunadb.Expr或 an interface{}.

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`
}
于 2020-03-14T14:51:13.657 回答
0

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

于 2020-03-14T14:55:58.543 回答