Django Languages Plus
django-languages-plus provides models and fixtures for working with both common languages and ‘culture codes’ or locale codes, like pt-BR.
Note that this is only a small (but popular) subset of all living languages, and is not even a comprehensive set of the ISO 639 languages. It does however include the endonym/autonym/exonym.
The Language model contains all ISO 639-1 languages and related information from http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
The model provides the following fields (original wikipedia.org column name in parentheses).
name_en (ISO Language Name)
name_native (Native Name)
iso_639_1 (639-1)
iso_639_2T = (639-2/T)
iso_639_2B = (639-2/B)
iso_639_3 = (639-3)
family = (Language Family)
countries_spoken
Installation
pip install django-languages-plus
Usage
Add languages_plus to your INSTALLED_APPS
Migrate your database and load the language data fixture:
python manage.py migrate python manage.py loaddata languages_data.json.gz
In your code use:
from languages_plus.models import Language lang = Language.objects.get(iso_639_1='en')
Generating Culture Codes (ex: pt_BR)
django-countries-plus(https://pypi.python.org/pypi/django-countries-plus) is now an explicit requirement. After installing both packages you can run the following command once to associate the two datasets and generate a list of culture codes (pt_BR for example):
from languages_plus.utils import associate_countries_and_languages associate_countries_and_languages()
Requirements
django-countries-plus >= 1.
Django: Tested against the LTS versions of 3, 4, and the latest of 5. Python 3
Running Tests
Does the code actually work?
$ poetry install $ poetry run pytest
Or for the full tox suite:
$ poetry install $ pip install tox $ tox
Metadata
Release files for django-languages-plus 2.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django_languages_plus-2.1.1.tar.gz | 28.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_languages_plus-2.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 59.5 kB
Release files / django_languages_plus-2.1.1.tar.gz
| Download URL | django_languages_plus-2.1.1.tar.gz |
|---|---|
| Size | 28.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e2c4b5448fa9b787fb9d0fb952b53993b72d4fab9784c7815092e0d2b11e73fd
|
|
BLAKE2b-256 checksum How to use checksums |
7e78ec1bd0824ebad244d6a23eca287cb19fa019da3a57240c51a7ed456186a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.12.1 Darwin/23.2.0
|
Release files / django_languages_plus-2.1.1-py3-none-any.whl
| Download URL | django_languages_plus-2.1.1-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3d3fb829477e45969d3a2f869a771e66135918c238e8ace3e1c481c3a14b8232
|
|
BLAKE2b-256 checksum How to use checksums |
d76b5996abd58dfef3de5743442b1baef464dcdc5f25b5fab9fba6aaca81c2af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.12.1 Darwin/23.2.0
|