我用的是mongoose & node .我的网络服务器的js.

作为我的一个文档模式的一部分,我有一个"timestamp"字段.

这很好,允许我根据时间戳检索文档,但是,这会保存为ISODate格式,如下所述:http://docs.mongodb.org/manual/core/document/#date,如下所示:

"timestamp":"2013-04-04T19:31:38.514Z"

我不介意,但我会按原样发送给客户.这意味着我必须使用日期.在客户端解析()之后,我才能将操作与之进行比较.

有没有办法将日期存储为整数,或者在检索时自动将其转换为1?

我有什么理由保持现状,在客户端处理它吗?

提前谢谢.

推荐答案

您可以将timestamp的数值毫秒版本添加为架构上的virtual属性:

schema.virtual('timestamp_ms').get(function() {
  return this.timestamp.getTime();
});

然后,您可以通过模式上的一个选项在模型实例的toObject个调用中启用虚拟字段:

var schema = new Schema({
  timestamp: Date
}, {
  toObject: { getters: true }
});

Mongodb相关问答推荐

为什么AllowDiskUse不能在$GROUP阶段的聚合管道中工作?

获取响应周期中的特定键和值

多键索引,性能问题

mongoDB文档数组字段中的唯一项如何

Mongodb,在一个查询中用正则表达式更新部分字符串

DB.collection('comments').find() 不工作

根据条件删除一些数组元素并将数组的大小更新为mongo中的另一个文件

.insertOne 不是函数

Mongo 重启错误 -- /var/run/mongodb/mongod.pid 存在

在 GridFS、express、mongoDB、node.js 中存储来自 POST 请求的数据流

如何对连接到 mongo 的方法进行单元测试,而不实际连接到 mongo?

MongoDB 嵌套 OR/AND 在哪里?

MongoDB的数据库管理工具

Mongo聚合框架,排序然后分组不起作用

更新时提示Field name duplication not allowed with modifiers

验证 MongoCredential 的异常和未分类的 Mongo Db 异常

mongodb安装失败运行mongod

如何从mongoose中的对象 ID 获取创建日期?

是否可以使用聚合框架对 MongoDB 中的 2 个字段求和?

Mongo 条件为key doesn't exist?