Node.js 在mongoose模式中仅设置时间

Node.js 在mongoose模式中仅设置时间,node.js,mongoose,Node.js,Mongoose,如何在mongoose模式中设置唯一时间? 就像我们在sequelize模式中可以做的那样 他们在mongoose中有没有办法在mongoose模式中设置时间???这是一个简单的日期,没有其他类似的->开始时间:日期 以下是mongoose所有可用数据类型的文档: 如果您只需要日期的时间,您可以使用getters来实现这一点:我以前也尝试过实现同样的目标,但失败了 我能想到的最好的解决方案是只在插入数据库时添加时间,而不是在创建模式时添加时间 这样就可以使用datetime.toLocaleTi

如何在mongoose模式中设置唯一时间? 就像我们在sequelize模式中可以做的那样


他们在mongoose中有没有办法在mongoose模式中设置时间???

这是一个简单的日期,没有其他类似的->开始时间:日期

以下是mongoose所有可用数据类型的文档:


如果您只需要日期的时间,您可以使用getters来实现这一点:

我以前也尝试过实现同样的目标,但失败了

我能想到的最好的解决方案是只在插入数据库时添加时间,而不是在创建模式时添加时间


这样就可以使用datetime.toLocaleTimeString;或者moment.js只添加不带日期的时间等。

恐怕没有mongoose模式类型可以像SQL中那样存储时间

我在我的一个项目中将时间存储为日期,只保留该日期的时间部分。它或多或少起作用。 也许MongoDB$hour和$minute聚合可以有所帮助。 但这不是一个非常优雅的解决方案

另一种可能是将时间存储为单独的数字小时、分钟、秒

到目前为止,我发现最好的方法是将其存储为字符串,如中所述


也许您可以进一步深入这个想法,创建自己的模式时间类型。

我只想要时间。。和Date give whole time stamp@slowdeath007您仍然使用Date数据类型,并使用getter仅占用时间:
 startTime: DataTypes.TIME,
    endTime: DataTypes.TIME