我正在使用Ruby on Rails 3.2.13 Ruby 1.9.3。Ruby on Rails I18n - 日期的本地化在localhost中生效但尚未生產
我在en.yml文件下面的代碼:
date:
formats:
default: "%Y-%m-%d"
short: "%b %d"
long: "%A, %B %d, %Y"
mmyy: "%B %Y"
我在fr.yml文件下面的代碼:media_created
date:
formats:
default: "%Y-%m-%d"
short: "%b %d"
long: "%A, %d %B %Y"
mmyy: "%B %Y"
我的日期字段存儲在字符串中YYYY-MM-DD格式
這裏是在我的視圖,以顯示在我的視圖短日期格式的代碼:
<%= l media_item.media_created.to_date, format: :mmyy %>
下面是如何我的短格式在本地主機(日期2013-07-01)工作的例子:
July 2013 (en)
juillet 2013 (fr)
這裏是我的長格式生產是如何工作的一個例子(日期2013年7月-01):
July 2013 (en)
July 2013 (fr)
這裏是在我的視圖的代碼,以顯示在我的視圖長日期格式:
<%= l media_item.media_created.to_date, format: :long %>
這裏是我的長格式在本地主機是如何工作的一個例子(日期2013年6月23日這是上週日):
Sunday, June 23, 2013 (en)
dimanche, 23 juin 2013 (fr)
這裏是我的長格式生產是如何工作的一個例子(日期2013-06 -23):
Sunday, June 23, 2013 (en)
Sunday, June 23, 2013 (fr)
我閱讀對堆棧溢出的http://guides.rubyonrails.org/i18n.html和幾個例子,如第3.3節中描述其中所用的升幫手。然而,在第5節中,它討論瞭如何使用t助手進行自定義翻譯。我用我的所有其他國際化國際化,它工作正常。唯一的問題是當我使用l助手的日期。
我查找了如何使用t幫助程序的示例,如鏈接Rails指南鏈接中所述。該鏈接沒有給出如何使用字段名稱對語句進行編碼的示例。我在堆棧溢出中找到的所有示例都使用l幫助程序或strftime方法。我希望能夠'翻譯'日期格式,就像生產中的其他應用程序一樣,它可以在本地主機中工作。我已經檢查了所有已更改的文件,以便在生產服務器上執行此操作,以確保所有文件都已移到那裏。從我讀過的東西看來,似乎l助手可能不適合定製翻譯。也許使用T幫助程序會照顧Rails指南所提出的這個問題。我會繼續尋找能否找到使用幫助器的例子,就像我在這裏爲幫助者所做的那樣,或者嘗試猜測一些解決方案。
任何幫助,將不勝感激。
更新:2013/7/29 12:47 CDT - 我可以看到兩臺服務器之間唯一的區別是,開發服務器運行ruby 1.9.3p327,生產服務器運行ruby 1.9.3p362 。但我不敢相信這可能會導致我的問題,但我覺得我應該注意到這一點。