2009-12-07 10 views
7

मेरे विचारों में कॉन्फ़िगर/लोकेशंस/de.yml में भी मेरे सक्रिय रिकॉर्ड अनुवादों का उपयोग करने का प्रयास कर रहा है। मैंने सोचा कि मैं इस का उपयोग करते हुए चालाक हूँ:ActiveRecord विशेषता का अनुवाद करने के लिए Rails I18n.t का उपयोग कैसे करें?

de: 
    activerecord: 
    attributes: 
     user: 
     login: "Benutzerkennung" 
     comment: "Bemerkungen" 

और मेरे विचार में इस: डी:

<%= label_tag :login, t('activerecord.attributes.user.login') %> 

लेकिन बजाय अनुवाद मूल्य ("Benutzerkennung") मैं कुख्यात "अनुवाद लापता हो रही है की , activerecord, विशेषताएँ, उपयोगकर्ता, लॉगिन "

क्या किसी ने यह काम किया है (लेबल अनुवाद प्लगइन का उपयोग नहीं कर रहा है (मैं संभावित साइड इफेक्ट्स से सावधान हूं), या User.humanize_attribute_name)? मैं क्या खो रहा हूँ? (यह काम करता है जब मैं "activerecord1" या Activerecord से कुछ और उपयोग करता हूं, इसलिए मेरा सेटअप ठीक लगता है)

धन्यवाद!

उत्तर

14

ठीक है, मेरा बुरा, यह ठीक काम करता है। मैं YML स्वरूपण जाल :(

आप रास्ते में डिबग मदद करने के लिए, का उपयोग करें "स्क्रिप्ट/कंसोल" और निम्नलिखित बयानों में गिर गई: - I18n.locale -> चाहिए उत्पादन वातावरण आप जांच करना चाहते हैं - I18n.t ('activerecord.attributes') -> आपको अपने अनुवाद के लिए सभी कुंजी/मूल्य जोड़े देना चाहिए, यदि नहीं, तो आपने अपनी वाईएमएल फ़ाइल में एक स्वरूपण त्रुटि बनाई है या यह

और बीटीडब्ल्यू नहीं मिला - प्लगइन काफी अच्छी तरह से काम करता है http://github.com/iain/i18n_label/ यदि आप ".human_name" (जो प्लगइन का उपयोग करता है) का परिणाम पसंद नहीं है, बस वापस I18n.t लिए ('अपने प्रमुख')

+0

धन्यवाद, यह वास्तव में मुझे मेरे स्थान फ़ाइल की ओर config/स्थानों – TheDeadSerious

+0

के बजाय config/स्थान में किया जा रहा है ओर इशारा किया हां, आप इसे कठिन तरीके से आजमा सकते हैं, इसे अपने सक्रियरेकॉर्ड लोकेल में हाथ से मैप कर सकते हैं। या, आप बस रेलों की देखभाल कर सकते हैं। जब तक आपका yml सही होता है (yml फ़ाइल के अंत में नई लाइन को न भूलें), और आप सामग्री विशेषता दिए बिना अपना लेबल बनाते हैं, तो यह स्वचालित रूप से एक अनुवाद की खोज करेगा। –

0

आप shou गिर एलडी v2.3.11 को रेल मणि अपग्रेड करें (मैंने 2.3.9 का उपयोग करने की कोशिश की, लेकिन अब यह उपलब्ध नहीं है इसलिए मैं आपको 2.3.11 सुझाव देता हूं)!

gem install -v=2.3.11 rails 

आप इस मुद्दों यहाँ प्रलेखित पा सकते हैं: Rails 2.3.9 Release notes

7

एक अन्य विधि:

<%= label_tag :login, User.human_attribute_name(:login) %> 
संबंधित मुद्दे