node.js - 从nodejs插入日期值到mongodb

我正在尝试将 expressjs 中的一个日期值插入到 mongodb。我正在使用 mongodb native 驱动程序。

问题是当我使用创建一个对象并使用该变量插入它时,日期作为字符串插入。这是示例-

var expenseTest = {date: new Date()};

database.collection('expensemaster').insert(expenseTest, function(err, r){
    console.log("query executed");
});

这里是DB中的值-

{
    "_id" : ObjectId("584f9b6e8c06a5717d10ee59"),
    "date" : "2016-12-13T06:55:24.698Z",
}

但是当我直接在插入查询中插入对象时,它的日期返回为 ISODate(date)。

这是示例-

database.collection('expensemaster').insert({date: new Date()}, function(err, r) {
    console.log("query executed");
});

db中的值-

{
    "_id" : ObjectId("584fba82566fc8787e75a7ed"),
    "date" : ISODate("2016-12-13T09:08:18.441Z")
}

我的问题是 - 如果我必须使用 insertMany 插入将日期作为字段之一的对象数组,该怎么办。

如何在数据库中获取日期为 ISODate(date)。

最佳答案

当你插入而不是调用时

database.collection('expensemaster').insert({date: new Date()}, function(err, r) {
console.log("query executed");
});

使用这个:

database.collection('expensemaster').insert({date: new Date(Date.now()).toISOString()}, function(err, r) {

console.log("query executed");
});

这将创建一个 iso 日期供您插入。我使用 Date.now() 但你可以在那里插入你想要的任何日期。以下是 .toISOString 的控制台日志

console.log(new Date(Date.now()).toISOString());

https://stackoverflow.com/questions/41117820/

相关文章:

node.js - NodeJS 崩溃 : Mongoose findById() does NOT

php - 在 Ubuntu 14 上将 PHP Mongo 扩展更新到 1.5

node.js - 防止 Mongoose 模式中数组中的重复条目

mongodb - Docker-MongoDB 中的身份验证问题

mongodb - 选择 2 个字段并返回具有不同值的排序数组

mongodb - 使用更新查询将文档值从字符串更改为 ObjectId

python - 具有完整行对象的 Mongo Distinct Query

mongodb - 按 id 对 Mongo 文档进行分组,并按时间戳获取最新文档

ruby-on-rails - 运行 Rails 应用程序时的 Mongo::Error::NoSe

mongodb - 如何将 MongoDB 存档文件转换为 JSON 格式?