2011-03-22 3 views
9

मेरे पास एक मणि है जो I18n लोकेल शब्दकोशों का उपयोग करता है जो मेरे रत्न फ़ोल्डर के अंदर lib/locales/*। Yml में रहता है।मैं मैम से रेल एप्लिकेशन में I18n लोकेल शब्दकोश कैसे जोड़ूं

जब मणि आरंभ नहीं हो जाता मैं अपने रेल आवेदन में इन शब्दकोशों लोड करना चाहते हैं, लेकिन मैं समझ नहीं कैसे:

I18n.load_path += Dir.glob("lib/locales/*.{rb,yml}") 

दुर्भाग्य से यह जब काम नहीं करता:

यह है कि मैं क्या करने की कोशिश की है मणि मेरे रेल ऐप के अंदर भरा हुआ है। जब मैं I18n.t("foo") पर कॉल करता हूं तो मुझे "translation missing: en, foo" मिलता है।

I18n.load_path का आह्वान करते समय मुझे शायद स्थानीय लोगों को पूरा पथ प्रदान करना होगा, लेकिन मैं यह नहीं समझ सकता कि कैसे।

कोई संकेत?

उत्तर

6

उपयोग __FILE__

Dir.glob(File.dirname(__FILE__) + "lib/locales/*.{rb,yml}") 
+0

हाँ, यह काम करता है! मैंने इस बीच इसे समझ लिया, अक्सर एक प्रश्न लिखते समय ;-) धन्यवाद! – auralbee

4

रिकॉर्ड के लिए, यदि आप <GEM_ROOT>/config/locales में अपने स्थानों में कहें, वे स्वचालित रूप से उठाया जा जाएगा।

+5

केवल अगर मणि एक रेल इंजन है –

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