2014-11-20 9 views
5

मैं एक Django (1.6) साइट (ट्विटर बूटस्ट्रैप के साथ) का निर्माण कर रहा हूं जिसमें कुछ रूप हैं जहां उपयोगकर्ता को कुछ तिथियां भरनी होंगी। मैंने l10n और i18n सक्षम किया। डेटाटाइम फ़ील्ड को JQuery विजेट द्वारा नियंत्रित किया जाता है। विजेट दिनांक और समय के इनपुट प्रारूप को परिभाषित करने के लिए पैरामीटर स्वीकार करता है। मैं टेम्पलेट टैग में वर्तमान django डेटाटाइम प्रारूप कैसे प्राप्त कर सकता हूं, ताकि मैं इसे जावास्क्रिप्ट समकक्ष में मैप कर सकूं? मैं चाहता हूं कि पूरा लोकेल (जैसे nl_BE, en_US, ...) प्राप्त करें क्योंकि मैं बेल्जियम में रहता हूं और हम फ्रांसीसी, डच और जर्मन को छेड़छाड़ करते हैं, लेकिन हम सभी एक ही दिनांक प्रारूप का उपयोग करते हैं। अगर मैं केवल भाषा का उपयोग करता हूं (django.utils.translation से get_language के साथ), मैं फ्रांस और जर्मनी से दिनांक प्रारूप देखता हूं।अनुरोध से django देश

>>> from django.utils import formats 
>>> formats.get_format("SHORT_DATE_FORMAT", lang="nl") 
Out[27]: u'j-n-Y' 
>>> formats.get_format("SHORT_DATE_FORMAT", lang="fr") 
Out[28]: u'j N Y' 
>>> formats.get_format("SHORT_DATE_FORMAT", lang="de") 
Out[29]: u'd.m.Y' 

मैं उनके डेमो पृष्ठ पर पहले से ही Django-दिनांक-विजेट जाँच की, लेकिन अगर मैं डच या फ्रेंच करने के लिए अपने ब्राउज़र (क्रोम) स्विच, यह दिनांक स्वरूप में परिवर्तन नहीं होता ...

किसी को भी नहीं है इसे हल करने के लिए एक विचार?

उत्तर

1

ऐसा लगता है कि आपको कुछ कस्टम प्रारूप फ़ाइलों को बनाने की आवश्यकता है, क्योंकि django fr_BE, de_BE, और nl_BE के लिए लोकेल प्रारूप प्रदान नहीं करता है। कस्टम लोकेल प्रारूप बनाने के तरीके पर https://docs.djangoproject.com/en/1.6/topics/i18n/formatting/#creating-custom-format-files देखें।

यह मूल रूप से है कि अपने नए प्रारूप में शामिल होंगे एक नई एप्लिकेशन बनाने शामिल है, और FORMAT_MODULE_PATH सेटिंग का उपयोग कर कि एप्लिकेशन को निर्दिष्ट।

formats/ 
    __init__.py 
    fr_BE/ 
     __init__.py 
     formats.py 
    nl_BE/ 
     __init__.py 
     formats.py 
    de_BE/ 
     __init__.py 
     formats.py 

तुम भी settings.py में

LANGUAGES = (
    ('nl-be', ugettext_lazy('Dutch (Belgium)')), 
    ('nl-fr', ugettext_lazy('French (Belgium)')), 
    ('nl-de', ugettext_lazy('German (Belgium)')), 
) 
+0

धन्यवाद जोड़ना चाहिए fr-हो, de-हो, और nl-होना आपके भाषाओं के लिए,:

आपका प्रारूपों एप्लिकेशन कुछ की तरह होना चाहिए मै उसे करने की एक कोशिश तो करूंगा। – WimDH

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