0

简化结构:

type User struct {
    ResetToken     string        `bson:"resettoken,omitempty" json:"resettoken"`
    ResetSent      time.Time     `bson:"resetsent,omitempty" json:"resetsent"`
}

现在成功(密码)重置它应该设置ResetToken =“”并将ResetSent设置为“未初始化”又名0或初始值或空,你命名它。

在字符串的情况下,它是用 "" 和 ",omitempty" 来完成的,但是我该如何处理 time.Time?

4

1 回答 1

3

时间零是time.Time{},您可以使用 来检查它是否为零time.IsZero(t)。所以,像:

user.ResetSent = time.Time{}

如果你真的需要它omitempty,你可以使用 a *time.Time,所以如果它是空的,它会留空。

更新:Gustavo 的评论是正确的,omitempty按零值时间的预期工作,没有指针。

于 2014-01-04T16:00:25.873 回答