【问题标题】:Mongoose storing the same date and time in the object of arrayMongoose 在数组对象中存储相同的日期和时间
【发布时间】:2021-04-12 02:41:57
【问题描述】:

我的猫鼬架构如下:

     clothes: [{
      _id: {
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Clothes'
      },
      dateAdded: {
       type: Date,
       default: Date.now
     }
  }],

现在,如果我在 1 分钟内将任何新对象推入衣服数组,那么它会存储相同的日期和时间。

"clothes" : [ 
    {
        "_id" : ObjectId("5e3bcc9434a40d46e7eb2b25"),
        "dateAdded" : ISODate("2021-01-05T10:50:19.979Z")
    }, 
    {
        "_id" : ObjectId("5c0599f6975b274a7654702a"),
        "dateAdded" : ISODate("2021-01-05T10:50:19.979Z")
    }, 
    {
        "_id" : ObjectId("5d8cce493eb29c6e5af6be07"),
        "dateAdded" : ISODate("2021-01-05T10:50:19.979Z")
    }, 
    {
        "_id" : ObjectId("5db8344a1689662efbc6d816"),
        "dateAdded" : ISODate("2021-01-05T11:02:47.352Z")
    }
]

如果你能帮我解决这个问题,我真的很感激。

【问题讨论】:

  • 你想要什么?你想让它存储不同的日期吗?在你做的每一个条目中?

标签: node.js database mongodb mongoose nosql


【解决方案1】:

我也遇到过这种奇怪的行为。

这是因为,您已将 dateAdded 字段的默认值定义为 Date.now

每当您创建条目时,删除默认值并将new Date() 值推送到数组。

这应该可以解决问题。

【讨论】:

  • 您好,非常感谢您的快速回复,但我想自动而不是手动完成。
  • @NaimishKher 我试过你的shema,它对我有用。你能分享一下你用来向数组添加条目的查询吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-21
  • 1970-01-01
  • 2021-11-21
  • 1970-01-01
  • 2018-02-09
  • 1970-01-01
相关资源
最近更新 更多