2011-06-15 132 views

回答

1

看起来有no predefined helper to do this particular job automatically。您必须extend and write您自己的帮手才能使用此功能。

另外,this is a very old plugin,我不确定这个工作还是维持,类似的事情。

我建议你先走,并写了自己的助手来完成这项工作作为another SO question建议是这样的:

def am_pm_hour_select(field_name) 
select_tag(field_name,options_for_select([ 
    ["1 AM", "01"],["2 AM", "02"],["3 AM", "03"],["4 AM", "04"],["5 AM", "05"],["6 AM", "06"], 
    ["7 AM", "07"],["8 AM", "08"],["9 AM", "09"],["10 AM", "10"],["11 AM", "11"],["Noon", "12"], 
    ["1 PM", "13"],["2 PM", "14"],["3 PM", "15"],["4 PM", "16"],["5 PM", "17"],["6 PM", "18"], 
    ["7 PM", "19"],["8 PM", "20"],["9 PM", "21"],["10 PM", "22"],["11 PM", "23"],["Midnight", "0"]])) 
end 

然后在视图:

<%= am_pm_hour_select "eventtime[start(4i)]" %> 
13

的Rails 3.1有上午/下午选项内置:

<%= f.datetime_select :starttime, :ampm => true, :start_year => 2011, :order => [:month, :day, :year] %> 
+2

这需要在文档中更明显。除了这里,我无法找到任何地方。很好的答案。 – Eric 2012-01-09 21:36:43

+0

http://apidock.com/rails/ActionView/Helpers/DateHelper/datetime_select – 2013-08-22 02:51:18

+0

这也适用于Rails 4.1。 – DDDD 2014-07-24 20:32:11