【问题标题】:Rails Time Select, rearrange componentsRails Time Select,重新排列组件
【发布时间】:2011-12-27 17:24:15
【问题描述】:

默认的 Rails 日期时间表单构建器提供以下表单元素作为选择框...

[YYYY] [MONTH] [DD] - [HH]:[MM]

... 24 小时制。

我想向我的用户展示:

[MON.] [DD] [YYYY] - [HH]:[MM] [AM/PM]

你是怎么做到的?

【问题讨论】:

    标签: ruby-on-rails date time ruby-on-rails-3.1


    【解决方案1】:

    datetime_select helper 有很多不同的选项。我从不费心去记住它们,所以我使用this apidock page 作为参考(datetime_select 和 date_select 有类似的选项)。

    在您的情况下,您需要将:order 数组、:ampm 设置为 true 等。

    编辑:好的,我真的很费心写你需要的选项哈希:

    date_select("question", "answered_at", :ampm => true, :order => [:month, :day, :year], :use_short_month  => true)
    

    【讨论】:

    • 这行得通,但有一点奇怪......为时间生成的选择框说,例如 [3PM]:[30] 而不是 [3]:[30] [PM]。知道如何使 AM/PM 成为最后的字段而不是嵌入小时吗?
    • 您可以从 Ruby on Rails (github.com/rails/rails/pull/343) 中的 :ampm 选项源代码中看到,无法进一步自定义它。此外,没有其他与 datetime_select AM/PM 相关的选项(:ampm 本身仅在 6 个月前被添加到核心中)。因此,您应该按原样使用它,或者编写自己的日期时间选择助手。
    猜你喜欢
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多