【发布时间】:2018-04-06 11:57:33
【问题描述】:
我关注了这个tutorial,在那里我可以制作一个用户提交评论和姓名的表单。但是,我想发送用户按下提交按钮的日期。似乎它只保存用户放入文本字段的数据。我不希望用户自己能够做到这一点。我该怎么做?
我之前用的是jQuery,但是改成Node.js/Express,因为我不得不把数据保存到数据库中,我不是很懂。
index.ejs 上的代码:
<form action="/tweets" method="POST">
<input type="name" id="name" placeholder="name" name="name">
<textarea type="text" id="tweet" placeholder="What's up?" name="tweet"></textarea>
<button type="submit">Tweet!</button>
</form>
每当我按下提交。名称和推文已保存,但我不知道如何保存日期。
.js 代码是这样的:
app.post('/tweets', (req, res) => {
db.collection('tweets').save(req.body, (err, result) => {
if (err) return console.log(err)
console.log('saved to database')
res.redirect('/')
})
})
当我使用 jQuery 时,我在 index.html 中有一个这样的按钮:
<input type="button" id="addTweet" value="Tweet!"/>
在 .js 文件中的哪个位置是这样的:
$('#addTweet').click(function(){
var addObj = {
"name": $('#name').val(),
"date": getTodayDate(),
"body": $('#tweet').val()
}
这样我可以保存他们单击按钮时的日期。在 Node.js 上,我不明白如何/在哪里可以输入日期。
【问题讨论】:
-
除非您希望用户能够操作它,否则我不会在前端获取这些数据。但是,在后端,您可以创建一个
new Date()并将其保存到数据库中的一个字段(可能是created_at)。 -
@snapjs 我希望在用户按下“提交”时保存日期。我现在已经用代码编辑了帖子,但我不明白我应该将日期发送到哪里。
标签: javascript jquery node.js mongodb forms