मेरे पास एक बहु-किरायेदार एप्लिकेशन है और मैं i18n मणि का उपयोग करने के साथ प्रयोग कर रहा हूं ताकि हमारे प्रत्येक क्लाइंट सिस्टम को अपनी पसंद के अनुसार सिस्टम को अनुकूलित कर सकें, विभिन्न पृष्ठों पर टेक्स्ट बदल सकें, ईमेल अनुकूलित कर सकें, और आगे भी। माना जाता है कि, मैं i18n का उपयोग नहीं कर रहा हूं क्योंकि इसका उपयोग किया जाना था, क्योंकि मैं वास्तव में विभिन्न "भाषाओं" का अनुवाद नहीं कर रहा हूं, सब कुछ अंग्रेजी में है, लेकिन प्रत्येक क्लाइंट के पास एक अलग अंग्रेजी है, अगर यह समझ में आता है।रेल i18n: क्या मैं "अनुवाद गायब" त्रुटियों को बंद कर सकता हूं?
फिर भी, मैं जो कुछ सोचता हूं वह आया है I18n मणि में एक बहुत ही खराब डिजाइन निर्णय है: अगर कभी अनुवाद नहीं होता है और जो कुछ भी सामान्य रूप से प्रिंट करता है, उसे प्रिंट करने के बजाय, यह कभी भी अनुवाद नहीं होता है, यह उठाता है एक त्रुटि। उदाहरण के लिए,
<%= distance_of_time_in_words_to_now @press_release.submitted_at %>
translation missing: en, datetime, distance_in_words, x_days
मेरा मतलब है, चलो के रूप में बाहर आता है! मैं भी अनुवाद नहीं करना चाहता हूं।
मैं समझता हूँ कि कारण यह हो रहा है है, क्योंकि मैं डिफ़ॉल्ट अनुवाद भरी हुई नहीं है, लेकिन मैं एक बैकेंड के रूप में ActiveRecord उपयोग कर रहा हूँ और मैं इसे साफ रखने के लिए करना चाहता था। "समाधान" सभी डेटाबेस अनुवाद फ़ाइलों को मेरे डेटाबेस अनुवाद स्टोर में आयात करना होगा, लेकिन यह एक अच्छा विचार प्रतीत नहीं होता है। अगर मैं भविष्य में रेल को अपग्रेड करता हूं तो क्या होगा? मुझे इन सभी अनुवादों को सिंक में रखने के बारे में चिंता करने की ज़रूरत है।
फिर से, मैं नहीं जान सकता क्यों इस डिफ़ॉल्ट व्यवहार है। जब कोई भी "3 दिन पहले" डिफ़ॉल्ट का उपयोग करने के बजाए उस फंकी त्रुटि संदेश को दिखाना चाहेगा?
वैसे भी, मेरे सवाल है, वहाँ यह स्वचालित रूप से अनुवाद बंद कर देते हैं और ग़ैर-अनुवादित संदेश का उपयोग करता है, तो अनुवाद मौजूद नहीं है के लिए एक तरीका है? धन्यवाद!
आप इसे कहां रखेंगे? –
शायद 'config/startizers /' के अंतर्गत '.rb' फ़ाइल में। – Dimitar
'I18n.backend = I18n :: बैकएंड :: ActiveRecord.new' रेल 4.2 – user938363