ruby-on-rails - 如何修改 Rails datetime_select 帮助器的输入类型?

标签 ruby-on-rails ruby helper datetime-select

我在我的一个表单中使用 Rails 帮助器 datetime_select。我目前需要将小时分钟的下拉列表更改为文本框验证。有没有办法可以指定我想要这些字段的文本框?或者可能有一个不同的 helper 可以满足我的需要?

这是我的用法:

datetime_select(:campaign, :start_date, :order => [:day, :month, :year, :hour, :minute])

最佳答案

如何滚动你自己的简单助手,例如

def datetime_text_fields(object_name, method)
  html = text_field_tag("#{object_name}[#{method}(3i)]", Date.today.day.to_s, :length => 2)
  html << select_month(Date.today, :field_name => "#{object_name}[#{method}(2i)]")
  html << text_field_tag("#{object_name}[#{method}(1i)]", Date.today.year.to_s, :length => 4)
  html << " "
  html << text_field_tag("#{object_name}[#{method}(4i)]", Time.now.hour.to_s, :length => 2)
  html << ":"
  html << text_field_tag("#{object_name}[#{method}(5i)]", Time.now.min.to_s, :length => 2)
end

随意添加更多格式内容/分隔符等,但它基本上会返回正确的字段名称,以便将 rails 识别为日期时间。 Rails 需要命名为 date(1i)、1i = 年、2i = 月等的字段。

老实说,我没有测试它或任何东西,但控制台中的输出看起来非常有说服力;)

关于ruby-on-rails - 如何修改 Rails datetime_select 帮助器的输入类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3231772/

相关文章:

jquery:fancybox缩略图助手,如何指定来源?

node.js - pg-promise 助手 : optionnal fields in insert and multiple-update

ruby-on-rails - 访问 "real_field_non_translated"? - 流动性

ruby-on-rails - 一次循环两个数组

ruby-on-rails - ruby on Rails 分析器不返回任何内容

ruby-on-rails - 如何更改已使用 rails migration 创建的表的索引?

ruby-on-rails - 如何从现有的 Time.zone for Rails 创建 Ruby DateTime?

ruby-on-rails - Ruby-on-Rails 的文本编辑器

java - 如何在eclipse中搜索本地java/android/j2me的文档

ruby-on-rails - 在 Rails 中,数据库锁定是否会确保只有进程一次检查属性值而不会成为巨大的瓶颈?