用户界面- Rails time_select with offset



我正在尝试在rails3应用程序中创建一个time_select,该应用程序只允许选择'15'和'45'。

我已经使用:minute_step => 30,但这只给我0,30。我想我正在寻找一个选项:minute_offset => 15,这似乎不存在…

创建自己的FormBuilder对于我想添加的一个简单扩展来说太麻烦了。

原来minute_select函数已经有一个默认为0的起始(偏移)参数。只需传递一个额外的参数就可以解决这个问题。(minute_offset是这里的新选项)

ActionView::Helpers::DateTimeSelector.class_eval do
  def select_minute
    if @options[:use_hidden] || @options[:discard_minute]
      build_hidden(:minute, min)
    else
      build_options_and_select(:minute, min, :step => @options[:minute_step], :start => (@options[:minute_offset] || 0) % (@options[:minute_step] || 60))
    end
  end
end

我正在接受关于如何更干净地完成此操作的建议,而不是这个全局猴子补丁

相关内容

  • 没有找到相关文章

最新更新