2013-05-02 233 views
2

我們的應用程序的每個用戶可以具有不同的日期格式。 我可以在應用程序控制器中使用類似Date::DATE_FORMATS[:default] = "%m/%d/%Y"的東西來改變默認的日期格式。YML根據用戶配置文件設置的日期格式

但我想在en.yml可更改日期格式:

date: 
     formats: 
      default: "%Y/%m/%d" 
      short: "%b %d" 
      long: "%B %d, %Y" 

如何更改默認情況下,短期和長期日期甲在陽明文件的飛行,我們可以使用Date::DATE_FORMATS[:default] = "%m/%d/%Y"

注:鑑於我用<%= l Time.now.to_date, :format=>:short%>

感謝。

+0

據我瞭解,你要顯示的日期格式爲每個用戶自己選擇(data_format_month)? – Bob 2013-05-02 13:00:21

+0

他不會選擇,但我們將從他的個人資料設置中獲取它,如同在數據庫中。 – 2013-05-02 13:11:53

+0

然後你可以使用'strftime(「format」)'方法:例子'Date.today.strftime(「%m /%d /%Y」)' – Bob 2013-05-02 13:13:47

回答

0

您只能在應用程序控制器中使用不同的數據格式。 在應用程序控制器中寫入。 (:data_format =>「%d-%B-%Y」) Time :: DATE_FORMATS.merge!(:data_format_month =>「%m-%d-%Y」)

並在視圖中或助手調用data_format或data_format_month。 例如 created_on.to_s(:DATA_FORMAT)顯示d-B-Y格式 update_on.to_s:用於顯示M-d-Y格式

+0

謝謝,它工作正常,但我想在視圖中使用<%= l Time.now.to_date,:format =>:short%>,它將從en.yml文件中獲取日期格式。 – 2013-05-02 13:56:52

相關問題