我如何使用 Golang 结构在 MongoDB 中插入时间日期戳?

How I insert a time-date-stamp in MongoDB with a Golang Sruct?

我有以下结构:

type TypeIncidence 结构{ 整数 bson:"number" json:"number" 描述字符串 bson:"description" json:"description" Date_time_stamp 字符串 bson:"dateTimeStamp" json:"date_time_stamp" }

我想在集合中插入一个文档:

type TypeIncidence struct {
    Number      int    `bson:"number" json:"number"`
    Description string `bson:"description" json:"description"`
    Date_time_stamp **string?**
}


var incidence TypeIncidence

incidence.Number = 1
Description =" Text"
Date_time_stamp = **string?**

我必须在 Golang 结构中使用什么数据类型来存储 date_time_struct 字符串?

如果我想用'YYYY-MM-DD hh:mm:ss'这样的格式存储,在golang中应该用什么模块and/or函数呢? (在本地机器或服务器转换时区时间)

提前致谢

您可以使用 time.Time:

CreatedAt time.Time `json:"created_at" bson:"created_at"`

但是,我建议您存储 Epoch Unix timestamp(自 1970 年 1 月 1 日以来的秒数),因为它是通用的:

CreatedAt int64 `json:"created_at" bson:"created_at"`

我过去曾尝试通过 Golang 将 time.Time 存储在 MongoDB 中,但是当我将相同的信息解析为 [=22= 中的 datetime 对象时遇到了麻烦].如果您想跨语言和技术兼容,存储 Epoch Unix 时间戳将是一个不错的选择。