Skip to main content
https://badge.fury.io/py/django-languages-plus.svg https://github.com/cordery/django-languages-plus/actions/workflows/tox.yml/badge.svg

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

  1. Add languages_plus to your INSTALLED_APPS

  2. Migrate your database and load the language data fixture:

    python manage.py migrate
    python manage.py loaddata languages_data.json.gz
  3. 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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_languages_plus-2.1.1.tar.gz (28.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_languages_plus-2.1.1-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

Details for the file django_languages_plus-2.1.1.tar.gz.

File metadata

  • Download URL: django_languages_plus-2.1.1.tar.gz
  • Upload date:
  • Size: 28.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Darwin/23.2.0

File hashes

Hashes for django_languages_plus-2.1.1.tar.gz
Algorithm Hash digest
SHA256 e2c4b5448fa9b787fb9d0fb952b53993b72d4fab9784c7815092e0d2b11e73fd
MD5 2e07468f74d73fdeb88893dd67163aa8
BLAKE2b-256 7e78ec1bd0824ebad244d6a23eca287cb19fa019da3a57240c51a7ed456186a0

See more details on using hashes here.

File details

Details for the file django_languages_plus-2.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for django_languages_plus-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3d3fb829477e45969d3a2f869a771e66135918c238e8ace3e1c481c3a14b8232
MD5 dfdd79ff0f6a7c2a75708bef1179c45f
BLAKE2b-256 d76b5996abd58dfef3de5743442b1baef464dcdc5f25b5fab9fba6aaca81c2af

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.1.1 This release

2 files

2.1.0

2 files

2.0.0

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.1.5

1 file

0.1.2

1 file

0.1.1

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page