Bentuk lokalisasiLink to this heading
IkhtisarLink to this heading
Django's formatting system is capable of displaying dates, times and numbers in templates using the format specified for the current locale. It also handles localized input in forms.
Dua pengguna mengakses isi sama mungkin melihat tanggal, waktu dan angka berbentuk dalam cara berbeda, bergantung pada bentuk untuk lokal saat ini mereka.
Masukan sadar lokal dalam formulirLink to this heading
Ketika pembentukan diadakan, Django menggunakan bentuk lokalisasi ketika mengurai tanggal, waktu dan sejumlah dalam formulir. Itu berarti itu mencoba bentuk berbeda untuk lokal-lokal berbeda ketika menebak bentuk digunakan oleh pengguna ketika memasukkan data pada formulir.
Untuk mengadakan bidang formulir untuk melokalkan masukan dan keluaran data menggunakan argumen localize nya:
class CashRegisterForm(forms.Form):
product = forms.CharField()
revenue = forms.DecimalField(max_digits=4, decimal_places=2, localize=True)
Mengendalikan lokalisasi dalam cetakan-cetakanLink to this heading
Django mencoba menggunakan format spesifik lokal ketika itu mengeluarkan nilai dalam cetakan.
Bagaimanapun, itu mungkin tidak selalu sesuai untuk menggunakan nilai-nilai lokal -- sebagai contoh, jika anda sedang mengeluarkan JavaScript atau XML yang dirancang untuk menjadi dapat-dibaca-mesin, anda akan selalu ingin nilai-nilai tidak terlokalisasi. Anda mungkin ingin juga menggunakan lokalisasi dalam cetakan-cetakan terpilih, daripada menggunakan lokalisasi dimanapun,
Untuk mengizinkan pengendalian baik terhadap penggunaan lokalisasi, Django menyediakan pustaka cetakan l10n yang mengandung etiket-etiket dan penyaring-penyaring berikut
Filter templatLink to this heading
localizeLink to this heading
memaksa lokalisasi pada sebuah nilai tunggal.
Sebagai contoh:
{% load l10n %}
{{ value|localize }}
Untuk meniadakan lokalisasi pada sebuah nilai tunggal, gunakan unlocalize. Untuk mengendalikan lokalisasi terhadap bagian besar dari sebuah cetakan, gunakan etiket cetakan localize.
unlocalizeLink to this heading
Memaksa sebuah nilai tunggal untuk dicetak tanpa lokalisasi.
Sebagai contoh:
{% load l10n %}
{{ value|unlocalize }}
Untuk memaksa lokalisasi pada sebuah nilai tunggal, gunakan localize. Untuk mengendalikan lokalisasi terhadap bagian besar dari sebuah cetakan, gunakan etiket cetakan localize.
Mengembalikan string perwakilan untuk angka bukan lokal (int, float, atau Decimal).
Membuat berkas bentuk disesuaikanLink to this heading
Django provides format definitions for many locales, but sometimes you might want to create your own, because a format file doesn't exist for your locale, or because you want to overwrite some of the values.
Untuk menggunakan bentuk disesuaikan, tentukan jalur dimana anda akan menempatkan berkas bentuk dahulu, setel pengaturan FORMAT_MODULE_PATH ke paket dimana berkas akan ada, contohnya:
FORMAT_MODULE_PATH = [
"mysite.formats",
"some_app.formats",
]
Berkas-berkas tidak ditempatkan langsung dalam direktori ini, tetapi dalam sebuah direktori bernama seperti lokal, dan harus dinamai formats.py. Waspadalah tidak menaruh informasi sensitif dalam berkas-berkas ini didalam dapat dikeluarkan jika anda melewatkan string django.utils.formats.get_format() (digunakan oleh penyaring cetakan date).
Untuk menyesuaikan bentuk Inggris, struktur seperti ini akan diperlukan:
mysite/
formats/
__init__.py
en/
__init__.py
formats.py
Selagi formats.py mengandung pengertian bentuk penyesuaian. Sebagai contoh:
THOUSAND_SEPARATOR = "\xa0"
untuk menggunakan ruang tanpa-berhenti (Unicode 00A0) sebagai pemisah ribuan, bukannya awalan untuk Inggris, sebuah koma.
Batasan-batasan dari bentuk lokal disediakan.Link to this heading
Beberapa lokal menggunakan bentuk konteks-sensitif untuk angka, dimana sistem lokalisasi Django tidak dapat ditangani otomatis.
Swis (Jerman)Link to this heading
The Swiss number formatting depends on the type of number that is being formatted. For monetary values, a comma is used as the thousand separator and a decimal point for the decimal separator. For all other numbers, a comma is used as decimal separator and a space as thousand separator. The locale format provided by Django uses the generic separators, a comma for decimal and a space for thousand separators.