2012-11-28 37 views
3

有沒有辦法將範圍應用到time_select助手?Rails中的有效範圍time_select

我試圖將其設置爲有效工作時間,是這樣的:

time_select('object_name', 'method', { :start_hour => 09, :end_hour => 17, :minute_step => 05 }) 

我應該怎樣做呢?

回答

1

你不能那樣做。 你必須改變select_hour方法上DateTimeSelector,像這樣:

module ActionView 
    module Helpers 
    class DateTimeSelector 
     def select_hour 
     if @options[:use_hidden] || @options[:discard_hour] 
      build_hidden(:hour, hour) 
     else 
      build_options_and_select(:hour, hour, :start => @options[:start_hour], :end => @options[:end_hour], :ampm => @options[:ampm]) 
     end 
     end 
    end 
    end 
end 

(未測試)

+2

嗨,托馬斯。謝謝你的答案。不過,我有些失望,爲了達到我期望的那麼簡單,我將不得不改變Rails內部結構。我的意思是,爲'時間選擇器'設置一個'時間範圍'聽起來不像要求太多,是嗎?如果你不介意的話,我會等到明天再看看有沒有人對此有不同的看法。如果不是的話,我會把你的答案設定爲接受的答案。再一次,謝謝。 – Georges