में रेल-मार्ग i18n समर्थन प्रदान करने का अच्छा तरीका है (नए) रेलों में ईर्ष्या में एक बात है: अंतर्राष्ट्रीयकरण समर्थन (Django में भी एक है, लेकिन मैं रेल के स्वाद पसंद करता हूं)।Django
रेल के बीच 'और Django के दृष्टिकोण मुख्य अंतर यह स्ट्रिंग की तरह, मुख्य मान अनुवाद मानचित्रण में कुंजी की तरह बर्ताव क्या यानी
Django संस्करण है (कुंजी -, "मुख्य" भाषा में उदाहरण के अंग्रेजी के लिए तार):
msgid "Save and quit"
msgstr "Zapisz i wyjdź"
रेल संस्करण समकक्ष (कुंजी - सार तार; स्टैंडअलोन व्यर्थ - कम से कम 1 "अनुवाद" प्रदान करने के लिए एक की जरूरत है) - वास्तव में, रेल YAML स्वरूप का उपयोग करता है, लेकिन निम्न उदाहरण विचार प्रस्तुत:
// english translation file
msgid "SAVE_QUIT_MESSAGE"
msgstr "Save and quit"
(कुंजी अचल स्थिति के बारे में सोच
और
// polish translation file
msgid "SAVE_QUIT_MESSAGE"
msgstr "Zapisz i wyjdź"
रेल 'i18n का समर्थन करने का तरीका IMHO बेहतर है - व्याकरण/वर्तनी सुधार के लिए प्रतिरोधी; भाषा अज्ञेयवाद आदि)।
Django में इस स्कीमा का उपयोग करने का एक तरीका अनुवाद के एकमात्र उद्देश्य के लिए कुछ अमूर्त भाषा का उपयोग करना होगा (उस भाषा में स्ट्रिंग्स अपरिवर्तनीय कुंजी बनाती हैं), लेकिन Django केवल भाषाओं के निश्चित सेट का समर्थन करता है। एक अन्य समाधान - इस भूमिका को चलाने के लिए समर्थित (अप्रयुक्त) भाषाओं में से एक को त्यागें - लेकिन यह सिर्फ खराब है: पी
इस मुद्दे को हल करने के लिए कोई विचार/तृतीय-पक्ष ऐप्स/तकनीकें?
Sidenote: विस्तार artibrary भाषाओं के लिए i18n समर्थन अजीब अवसरों देना होगा:
// slang translation file
msgid "SAVE_QUIT_MESSAGE"
msgstr "Save shit 'n' quit, bro"
... या आप केवल एक अंग्रेज़ी .po फ़ाइल उत्पन्न कर सकते हैं ... –
@Ignacio Vazquez-Abrams: मुझे यकीन नहीं है कि मैं समझता हूं। क्या आप अधिक विस्तृत हो सकते हैं? जेपी फाइल उत्पन्न करना कौन सा मुद्दा हल करता है? शायद मेरे प्रश्न में कुछ अस्पष्ट है - यदि ऐसा है, तो मुझे मार्गदर्शन करें और मैं इसे संपादित कर दूंगा। – gorsky
अंग्रेजी भाषा के लिए एक .po फ़ाइल, फ़्रेंच, जर्मन आदि के लिए –