Rails select_date表单名称

时间:2010-10-04 00:26:43

标签: ruby-on-rails date html-form

尽管我喜欢rails,但我总是讨厌以html格式处理日期...特别是当日期不是对象的属性时。

select_date帮助程序很好,但它始终生成:

<select name="date[year]" id="date_year">
<select name="date[month]" id="date_month">
<select name="date[day]" id="date_day">

我无法找到将名称前缀从“日期”更改为其他内容的方法。有没有办法做到这一点?当日期输入不是对象属性时,你们都用它们做什么?

2 个答案:

答案 0 :(得分:16)

您可以使用:prefix选项执行此操作。

<%= select_date(nil, :prefix => 'payday') %>

产生这个:

<select id="payday_year" name="payday[year]">
<select id="payday_month" name="payday[month]">
<select id="payday_day" name="payday[day]">

此处有更多示例

http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-select_date

答案 1 :(得分:1)

如果它不是对象属性,您是否只使用rails日期助手?你可以做得更好。

我只有一个简单的文本字段,并使用jquery将其装饰为日期..查看this jQuery date drop-down

然后,您将在控制器中将其解析为日期并执行您需要的任何操作。它只是params [:super_cool_date](或其他)