A django model & fixture containing common languages and culture codes
Project description
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
Django: Tested against the latest versions of 1.11, 2, and 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-languages-plus-1.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef312a46a6ad1290708e4d8fca16562e79b34fc51c6db576c9f15b50f31588dd |
|
MD5 | d7944b8358310f0b4c3d5329a2fc4b21 |
|
BLAKE2b-256 | d6ab0c7c90c969cad26ba94612270d5b4e61f6ad72866526e90969251b55947a |
Hashes for django_languages_plus-1.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24247dc1368edab3e7845fc1ee9b68ff5fc8ab56f5eab4ee66533a7ecff30a8f |
|
MD5 | 82b79fda7afc50c02855f506ea37ef44 |
|
BLAKE2b-256 | b034ffb51747f9f6f981d48dbedeb30c69d49333efa40f9650864bfa622f645e |