如果使用提示,则Rails datetime_select无法设置默认日期

时间:2011-06-19 07:00:35

标签: ruby-on-rails ruby ruby-on-rails-3

我在使用datetime_select在我的表单中工作时遇到了一些麻烦。我可以将它设置为EITHER设置默认日期或允许提示,但不能同时设置两者。我真正想要的是像

      2011 June 18 hour minute

其中设置了日,月和年弹出窗口的默认值,但小时和分钟的默认值不是。如果我使用此代码:

     <%= f.datetime_select:start_time, 
        :default => Time.now, 
        :prompt => {:hour => "hour", :minute => "minute"} %>

我得到了值

     2006 January 1 hour minute 

如果我没有设置提示,则默认显示正常。

    <%= f.datetime_select:start_time, :default => Time.now  %>

产量

    2011 June 18 23:53

我也试过设置我想要的默认部分

    <%= f.datetime_select:start_time, 
     :default =>{:year=>Time.now.year,:month=>Time.now.month,:day=>Time.now.day}, 
  :prompt => {:hour => "hour", :minute => "minute"} %>

它只是将整个默认设置为Time.now。

有什么想法?是否真的不支持提示和默认?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

据我所知,您应该尝试以下几行:

<%= f.datetime_select :start_time, :default => Time.now.strftime('%Y %B %d %H %M') %>

答案 1 :(得分:0)

看看my answer类似的问题。