如果想要使用MongoDB的golang-migrate将日期类型数据注册,可以这样做

总结

根据golang-migrate上的MongoDB迁移文章,golang-migrate可以用于MongoDB迁移。在迁移文件中,可以进行文档的更新,但如果想要注册日期类型的数据,可以按照以下步骤进行。

应对

按照”How to insert date into mongo from JSON file”的文章中所述,我认为只需准备一个迁移文件,格式如下:”createdAt”: { “$date”: “2018-11-10T22:26:12.111Z” },即可注册日期类型。然而,在使用golang-migrate时,我遇到了运行时错误,正如此问题中所述,golang-migrate不支持日期类型转换…。作为替代方案,建议使用currentDate进行更新操作。换句话说,可以先插入数据,然后使用当前日期进行更新以实现目的。

设定示例

以下是上述问题中提到的内容几乎完全相同,但是我现在会介绍一个以当前日期为设置的示例。
首先将日期设置为null,然后使用当前日期进行更新。

[
 {
    "insert": "sample_user",
    "documents": [
      {
        "_id": "id1",
        "name": "user1",
        "created_date": null
      }
    ]
  },
 {
    "insert": "sample_user",
    "documents": [
      {
        "_id": "id2",
        "name": "user2",
        "created_date": null
      }
    ]
  },
  {
    "update": "sample_user",
    "updates": [
      {
        "q": { "created_date": null },
        "u": {
          "$currentDate": {
            "created_date": true
          }
        },
        "multi": true
      }
    ]
  }
]