node.js - 日期输入未正确输入到 nodejs 中的数据库
问题描述
我有这样的问题。我正在使用 express4 制作 Web API。在他们中,我创建了一个保存数据的函数。在这里,我提供我的控制器。
const express = require('express');
var router = express.Router();
var Reservation = require('../models/reservation');
router.post("/create",function (req,res) {
const newReservation = new Reservation({
date: req.body.date,
from: req.body.from,
to: req.body.to,
lab: req.body.lab,
name: req.body.name,
email: req.body.email,
role: req.body.role,
year: req.body.year,
reason: req.body.reason,
state: "Not Comfirm"
});
Reservation.saveReservation(newReservation, function (err, reservation) {
if (reservation) {
res.send(reservation);
}
else {
console.log('Error in User save :' + JSON.stringify(err, undefined, 2));
}
});
});
router.get('/notComfirmed', function (req, res) {
Reservation.findNotComfirmed(function (err, reservations) {
if(err) throw err;
if (!reservations){
res.json({state:false,msg:"No reservations found"});
}
if(reservations){
res.json(reservations);
}
})
});
module.exports = router;
在这里提供我的模型。
const mongoose = require('mongoose');
const schema = mongoose.Schema;
const reservationSchema = new schema({
date:{type:Date, required:true},
from:{type:String},
to:{type:String, required:true},
lab:{type:String, required:true},
name:{type:String, required:true},
email:{type:String, required:true},
role:{type:String, required:true},
year:{type:String},
reason:{type:String, required:true},
state:{type:String, required:true},
});
const Reservation = module.exports= mongoose.model("Reservation",reservationSchema );
module.exports.saveReservation = function (newReservation, callback) {
newReservation.save(callback);
}
module.exports.findBYDateAndTime = function(date, time, lab, callback){
const query = {date:date,time:time, lab:lab};
Reservation.findOne(query,callback);
}
module.exports.findNotComfirmed= function (callback) {
const query = {state: "Not Comfirm"};
Reservation.find(query, callback);
}
当我和邮递员一起尝试时。日期与时区一起保存。例如,如果我将日期发送为“2018-06-19”,它会在数据库中保存为“2018-06-19 05:30:00.000”。我想删除那个时区。我也在谷歌和 StackOverflow 上搜索了很多时间。里面的例子不足以完全满足我的要求。那么有人可以帮我解决这个问题吗?
谢谢你!。
解决方案
也许这会帮助你链接。这是与 Mongoose 一起使用的 DateOnly 库的实现。
这是一个仅存储日期而不担心时区的猫鼬日期模块,如果您解决了问题,请告诉我
推荐阅读
- django - 使用 Daphne 和 Nginx 部署 django 频道的问题
- firebase - Firebase 查询和复合索引
- php - LARAVEL返回没有错误的空白视图
- go - 如何上传第三方 API 响应的文件
- azure-application-insights - 我想在 azure app Insight 中找到 2 个日期列之间的日期差异?
- kdb - 仅从表中选择那些列在 q kdb 中没有空值
- c# - 如何多次重试失败的 Cron 计划作业
- python - 更改熊猫数据框中日期时间的值
- wordpress - Wordpress 元查询不适用于动态参数
- c# - 将两个字符串与替换字符匹配