2013-01-25 109 views
2

我的問題是類似這樣的SO問題,但它並沒有回答我的問題:的Rails 3日期格式

Rails 3 default datetime format without UTC

我明白,我可以添加

Time::DATE_FORMATS[:default] = "%Y/%m/%d" 

environment.rb,它會相應地更改我的默認時間格式。

所以當我做Time.now.to_s我得到正確的格式。

但是,我的問題是,這怎麼不能用form_builder。例如:

<%= f.text_field :date %> 

會返回一個完整的UTC時間戳:2013-01-25 07:45:21

我知道我能做到這一點

<%= f.text_field :date, :value => @post.date.to_s %> 

,它會給我正確的格式。

但是這個解決方案對我來說似乎很難受。這真的是唯一的方法嗎?

+1

您希望您的輸入看起來像什麼? Rails [date_select](http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-date_select)助手的定製非常靈活,可能比文本字段更適合您的需求。 –

回答

-1

如果日期看起來像一個timestamp2013-01-25 07:45:21 UTC),

你可以做一些像下面這樣的觀點,你用本地化時間戳:

<%= localize(@post.date, :format => :long) %> 

根據你的問題,你可以嘗試使用date_select而不是text_field.

<%= f.date_select :date, :order => [:day, :month, :year] %> 
+0

我不確定這是他正在尋找的答案。他特別要求如何使用表單生成器來獲取正確的格式。 – vinhboy