2010-08-31 11 views
11

मेरे config/locales/pl.yml फ़ाइल (here से नमूना):रेल 2.3.5 I18n माह/दिन नाम अनुवाद की समस्या

pl: 
    date: 
    day_names: [Niedziela, Poniedziałek, Wtorek, Środa, Czwartek, Piątek, Sobota] 
    month_names: [~, Styczeń, Luty, Marzec, Kwiecień, Maj, Czerwiec, Lipiec, Sierpień, Wrzesień, Październik, Listopad, Grudzień] 

script/console में:

I18n.locale = 'pl' 
=> "pl" 

Time.now.strftime("%A, %B") 
=> "Tuesday, August" 

क्यों? या इसे एक और तरीका दें - मैं अनुवाद महीने के नाम कैसे प्राप्त कर सकता हूं? मैं यह भी ध्यान दूंगा कि लोकेल फ़ाइल निश्चित रूप से पढ़ी जाती है क्योंकि इसमें अन्य अनुवादों का समूह शामिल है, जो सभी काम करते हैं।

उत्तर

17

यह निर्भर करता है कि आप किस रेल संस्करण का उपयोग कर रहे हैं। रेलवे 3.0.0 पर अनुवाद करने के लिए एक सहायक है (मुझे नहीं पता कि यह कौन सा संस्करण उपलब्ध कराया गया था)।

controller.localize Time.now, :format => '%A, %B' 

करें और देखें कि यह काम करता है:

एक दृश्य में, आप

localize Time.now, :format => '%A, %B' 
स्क्रिप्ट/कंसोल में

(या रेल कंसोल) लिख सकते हैं, लिखकर देखें।

controller.l Time.now, :format => '%A, %B' 
+0

धन्यवाद: वहाँ भी l सहायक (लोअरकेस एल) है, जो localize के लिए एक आशुलिपि है है! यह 'अनुवाद' सहायक के बजाय 'localize' का उपयोग करने के बारे में है। बीटीडब्ल्यू, कंसोल में (रेल 2.3 में) यह 'helper.localize Time.now,: format =>"% B "', 'नियंत्रक' नहीं होना चाहिए। और एक और अतिरिक्त - आपके पास 'pl.yml' में 'pl, time, format' प्रविष्टियां होनी चाहिए। –

संबंधित मुद्दे