格式化text_field助手?

时间:2009-12-11 00:05:43

标签: ruby-on-rails format strftime textfield

是否可以使用Rails text_field助手将strftime格式应用于文本输入字段的值? 在我用于创建或编辑记录的表单中,我有一个文本输入字段,该字段由calendardateselect javascript的变体填充。我单击文本字段,弹出一个小日历。选择年,月,日和时间后,日历会消失,文本输入中剩下的内容是日期的文本表示。如果我去编辑记录,那就是我所看到的。

我想修改日期在文本输入字段中的显示方式。在显示该日期的其他模板中,我可以使用strftime,但我不知道如何(或者甚至可能)格式化文本输入字段的值。

感谢。

史蒂夫

2 个答案:

答案 0 :(得分:6)

选项1:如果您的应用有默认时间格式,text_field将使用该格式。例如,您可能包含config/initializers/time_formats.rb,其中包含以下内容:

Time::DATE_FORMATS[:default] = '%m/%d/%Y %I:%M %p'

选项2 :您可以直接使用text_field覆盖value的{​​{1}}。例如:

strftime

(你可能想用帮手清理它。)

答案 1 :(得分:0)

知道了,但必须使用传统的HTML输入元素,而不是Rails助手:

<input type="text" id="assignment_starts_at" name="assignment[starts_at]" class="jqueryCDS" size="30" value="<%= @assignment.starts_at.strftime('%A, %b %e, %G - %I:%M %p') if @assignment.starts_at %>" />