我一直在处理faunaDB的Time类型数据。我不知道哪种类型的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
我应该将golang的哪种数据类型用于faunaDB时间类型?谢谢你的建议!
由于您试图将faunadb.Expr
类型初始化为int64
变量,因此发生了错误。
因此,您可以更改Created
变量的类型。make是faunadb.Expr
或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`
}
在结构中使用常规go类型time.Time