猫鼬:用户定义的日期格式为架构类型

时间:2019-03-03 03:56:22

标签: node.js mongodb date mongoose mongoose-schema

  

我想在Mongoose Schema类型中使用我定义的Date格式。默认模式类型Date给出的日期格式类似于1985-01-01T00:00:00.000Z

实际上,我想在模式中使用Date类型,但格式应为1985-01-01(yyyy-dd-mm)。同样要保持此状态,可能的其他选择是将其作为字符串,但是我的要求是,模式类型应为Date。我不知道如何定义用户定义的Date格式。

  

我的架构如下:-

const weather1 = new Schema({
id : {type : Number , unique:true},
date : {type : Date},
location :{
    lat : {type : Number},
    lon : {type : Number},
    city : {type : String},
    state :{type : String}
},
temperature : [
    {
        type : Number
    }
]});

我从StackOverFlow本身搜索了不同的解决方案,但是没有一个问题和答案讨论了此类问题的解决方案。我为这些问题附加了链接,这些链接以不同的方式紧密解决了这些问题,但并未解决我的问题。

Link1

Link2

Link3

Link4

  

以上每个链接都有一些与模式类型Date相关的难题,但是当它不能解决我的问题时。

输入的数据是这样的

"id": 7,
"date": "1985-01-03",
"location": {
    "lat": 32.5156,
    "lon": -92.0406,
    "city": "Monroe",
    "state": "Louisiana"
},
"temperature": [
    43.2,
    43.2,
    42.6,
    42,
    41.4,
    41.3,
    40.7,
    40.3,
    41.2,
    44.2,
    46.9,
    49.4,
    51.1,
    52.5,
    53.6,
    54.1,
    53.7,
    51.8,
    49.2,
    47.3,
    46.4,
    45.4,
    44.8,
    44.5
]}

要存储的数据是这样的

"id": 7,
"date": "1985-01-01T00:00:00.000Z",
"location": {
    "lat": 32.5156,
    "lon": -92.0406,
    "city": "Monroe",
    "state": "Louisiana"
},
"temperature": [
    43.2,
    43.2,
    42.6,
    42,
    41.4,
    41.3,
    40.7,
    40.3,
    41.2,
    44.2,
    46.9,
    49.4,
    51.1,
    52.5,
    53.6,
    54.1,
    53.7,
    51.8,
    49.2,
    47.3,
    46.4,
    45.4,
    44.8,
    44.5
]}
  

我正在使用节点版本v11.10.0和猫鼬版本5.4.16。   有人可以让我知道如何解决这个问题吗?

0 个答案:

没有答案