मानवीयकरण अगर आपकी वेबसाइट अंग्रेजी में है समाधान ठीक है। अन्य भाषाओं के लिए, आपको एक और समाधान की आवश्यकता है: मैं बैबल का उपयोग करने की सलाह देता हूं । एक समाधान यह है कि संख्याओं को ठीक से प्रदर्शित करने के लिए एक कस्टम टेम्पलेट टैग बनाया जाए। यहाँ बताया गया है: बस निम्नलिखित फ़ाइल बनाएँ your_project/your_app/templatetags/sexify.py
:
# -*- coding: utf-8 -*-
from django import template
from django.utils.translation import to_locale, get_language
from babel.numbers import format_number
register = template.Library()
def sexy_number(context, number, locale = None):
if locale is None:
locale = to_locale(get_language())
return format_number(number, locale = locale)
register.simple_tag(takes_context=True)(sexy_number)
फिर आप इस टेम्प्लेट टैग का उपयोग अपने टेम्प्लेट में इस तरह कर सकते हैं:
{% load sexy_number from sexify %}
{% sexy_number 1234.56 %}
- एक अमेरिकी उपयोगकर्ता (लोकेल en_US) के लिए यह 1,234.56 प्रदर्शित करता है।
- एक फ्रेंच उपयोगकर्ता (लोकेल fr_FR) के लिए, यह 1 234,56 प्रदर्शित करता है।
- ...
इसके बजाय आप चर का उपयोग कर सकते हैं:
{% sexy_number some_variable %}
नोट:context
पैरामीटर वर्तमान में मेरे उदाहरण में नहीं किया जाता है, लेकिन मैं इसे वहाँ पता चलता है कि आप आसानी से इसे कुछ भी टेम्पलेट संदर्भ में है कि का उपयोग करने के लिए इस टेम्पलेट टैग ठीक कर सकते हैं डाल दिया।