node.js - Mongoose 如何在模型中设置日期格式

标签 node.js mongodb mongoose meanjs

我是 Mongoose 的新手。我使用 "Date" 作为我的 "holidayDate" 列的类型。我只想在我的 "holidayDate" 列中存储日期而不是时间,所以有没有办法在域模型中定义日期格式,所以当我的域保存我的 "holidayDate"列值将根据域模型的日期格式保存。

var HolidaySchema = new Schema({
    holidayName: {
        type: String,
        default: '',
        required: 'Please fill holiday name',
        trim: true
    },
    holidayDate: {
        type: Date,
    required: 'Please fill From Date'
    }

});

mongoose.model('Holiday', HolidaySchema);

最佳答案

MongoDB 的底层存储引擎 (BSON) 没有 date-without-time 类型,只有完整日期(有关 MongoDB 文档中 BSON 类型的详细信息,请参阅 this page)。

这样做的结果是您需要在代码中处理它,方法是确保在插入和查询时始终将时间设置为(例如)00:00:00,或者将其存储为不同的类型(例如yyyy-mm-dd 字符串或整数)。其中哪一个最合适取决于您查询和使用该日期的要求。

关于node.js - Mongoose 如何在模型中设置日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30499502/

相关文章:

node.js - 当mongodb不在同一个VM中时,mongodb连接超时

node.js - 连接已关闭 : Multiple node apps connecting to same MongoDB server using Mongoose

Node.js/Socket.io/Passport.js 注销问题

mongodb - 基于某些条件的两个字段的总和

node.js - Mongoose 得到 `TypeError: user.save is not a function` - 怎么了

javascript - Mongoose 模型静态方法的TypeError

reactjs - 如何向 mongoDb 模型添加新属性?

javascript - 引用错误: error is not defined when pass callback parameter

javascript - 将对象从express公开到angularJS

javascript - MongoDB:使用过滤器获取附近的所有内容