从表单中保存一个mongodb收集信息的困难

我正在尝试使用MEAN堆栈创build一个应用程序。 我正在使用mongoose作为我的mongodb数据库的模式。 在包含string,数字和date字段的一个集合上,在尝试保存到数据库时出现错误。 input的部分信息是数字和date。 这是给我一个错误,我注意到,我从来没有保存它。 问题:捕获表单中的信息之后,是否必须将string转换为数字,将string转换为date? 如果是这样,我试图转换Date.parse转换为stringdate和parseInt涵盖从string到数字,如下所示:

app.post('/api/show/post', authCheck, function(req, res) { console.log("Entrada a post"); console.log(req.body); var ciaID = " "; req.body.moveid = Date.parse(req.body.movein); req.body.open = Date.parse(req.body.open); req.body.close = Date.parse(req.body.close); req.body.number = parseInt(req.body.number); req.body.estimateamount = parseInt(req.body.estimateamount); req.body.balancedue = parseInt(req.body.balancedue); mongoose.model('company').findOne({name: "test company"}, function(err,doc){ var ObjectID = require('mongodb').ObjectID; ciaID = new ObjectID(doc._id); }); var show = new Show(req.body); show.created_at = Date(); show.updated_at = Date(); show.created_by = "username"; show.updated_by = "username"; show.save(function(err, doc){ if (err) { console.log(" the program all gets in here"); return err } else { res.status(201).json(doc); } }); }); 

我也尝试不转换任何这些值,并在任何情况下,它的工作。 我有其他的集合,只包含string字段,我没有任何问题。

我会感谢任何意见,

先谢谢你

尝试下面的代码并检查:

 req.body.moveid = new Date(req.body.movein); req.body.open = new Date(req.body.open); req.body.close = new Date(req.body.close); 

谢谢rroxysam跟进。 由于你上一篇文章,我发现了这个问题。 在mongodb和mongoose上定义了一个字段为Date,并且在表单中使用了错误的字段。 mongoose不会让我保存,以保持完整。 愚蠢的错误,真的对不起。再次感谢您的时间。