为什么 mongodb 将我的日期格式更改为长数字,我该如何解决?

Why does mongodb change my date formats to long number and how do I fix it?

我一直在为我一直从事的项目存储一些虚拟数据。一些数据包括日期格式的日期。但不知何故,我看到它将格式更改为长数字,我不知道为什么。有人可以告诉我如何将格式转换回日期吗?我看到有人建议使用聚合 $todate。例如:

db.getCollection('my_list').aggregate([
  {
    $project: {
      toDate: {
        $toDate: "$published_date"
      }
    }
  }
])

我已经尝试过上面的代码,但它不是永久更改。 我在 python 中作为日期时间格式得到的数据结果为: 9/11/2019 12:00 PM... 代码如下:

timestamp = '2019-11-09T12:00:12.000Z'
format = "%Y-%m-%dT%H:%M:%S.%fZ"

some_datetime_obj = datetime.datetime.strptime(timestamp, format)

Some_datetime_obj returns 一种日期时间格式。

但是当它进入mongodb时,我得到了一个N​​umberLong对象。 那么如何对数据库中的所有数据进行永久更改呢?

我明白了。我不知道为什么,但它是怎么发生的,因为我将我的数据帧转换为 json 格式,然后只插入到 mongodb.

旧代码:

records = json.loads(df.T.to_json()).values()
vid_client_db[VID_COL].insert_many(records)

新代码:

records = df.to_dict(orient='row')
vid_client_db[VID_COL].insert_many(records)