我尝试将日期字段添加到编辑页面,并且日期选择器正在运行,并且可以选择日期,保存表单时,该字段在数据库中保持为空。
有谁能告诉我如何从sails.js中的日期选择器中捕获日期?
.ejs文件:
<form action="/user/update/<%= user.id %>" method="POST" class="form-signin">
<h2>Update User Information</h2>
First Name: <input value="<%= user.first_name %>" name="first_name" type="text" class="form-control"/>
Last Name: <input value="<%= user.last_name %>" name="last_name" type="text" class="form-control"/>
Title: <input value="<%= user.title %>" name="title" type="text" class="form-control"/>
Username: <input value="<%= user.username %>" name="username" type="text" class="form-control"/>
Email: <input value="<%= user.email %>" name="email" type="text" class="form-control"/>
Date of Birth: <input value="<%= user.dob %>" name="dob" type="date" class="form-control"/>
Gender: <input value="<%= user.gender %>" name="gender" type="text" class="form-control">
Zip Code:<input value="<%= user.zip_code %>" name="zip_code" type="text" class="form-control">
Activation Date:<input value="<%= user.activation_date %>" name="activation_date" type="date" class="form-control"/>
Expiration Date:<input value="<%= user.expiration_date%>" name="expiration_date" type="date" class="form-control"/>
Admin: <input value="<%= user.admin %>" name="admin" type="text" class="form-control"/>
<input type="submit" value="Proceed" class="btn btn-lg btn-primary btn-block"/>
<input type="hidden" name="_csrf" value="<%= _csrf %>" />
以下是用户控制器的代码:
edit: function(req, res, next) {
User.findOne(req.param('id'), function foundUser(err, user) {
if(err) return next(err);
if(!user) return next('user doesn\'t exist.');
res.view({
user: user
});
});
},
update: function(req, res, next) {
User.update(req.param('id'), req.params.all(), function userUpdated(err,user){
if(err) {
return res.redirect('user/edit' + req.param('id'));
}
res.redirect('/user/show/' + req.param('id'));
});
},
答案 0 :(得分:0)
使用日期输入类型时,您需要将值设置为正确的RFC339表示。从Sails获得的内容将是toString()
调用它的日期。
设置值时,您应该可以格式化ejs文件中的日期:
<% var dob = (new Date(d)).toISOString().slice(0,10) %>
Date of Birth: <input value="<%= dob %>" name="dob" type="date" class="form-control"/>