【发布时间】:2015-03-24 17:05:39
【问题描述】:
如何保存日期选择字段?
说,我的观点是这样的:
<%= f.date_select :dob, :start_year => Date.current.year, :end_year => 1920 %>
这将被转换为 HTML:
<select id="user_dob_1i" name="user[dob(1i)]"> ..for year..
<select id="user_dob_2i" name="user[dob(2i)]"> ..for month..
<select id="user_dob_3i" name="user[dob(3i)]"> ..for date..
上面的选择值当然会有一些选项。
现在,当我提交页面/表单时,参数将被传递为:
Parameters: {"utf8"=>"✓", "user"=>{"dob(1i)"=>"2015", "dob(2i)"=>"3", "dob(3i)"=>"24"}, "commit"=>"Register"}
有意义吗?
在我的数据库中,我有一个名为“dob”的字段。问题是如何将这个字段保存在我的数据库中?
我正在使用 Rails 4.0.2 并使用 params permit 功能。我已经在我的控制器中添加了这个,
params.require(:user).permit("dob(1i)", "dob(2i)", "dob(3i)")
谷歌了一下,但我没有得出公平的结论..
【问题讨论】:
-
params.require(:user).permit(:dob)有什么问题? -
我得到这个:1个错误分配多参数属性[错误分配[2015,3,24]到dob(错误数量的参数(3个0..1))]尽管我知道此消息与许可无关,而是为了更安全,但我了解到明确传递它们。
-
下面的答案对你有用吗?
标签: mysql ruby-on-rails ruby ruby-on-rails-4