Skip to main content

Additions to Django's i18n module.

Project description

django-i18next - Additions to Django’s i18n module.

Prerequisites

  • Django 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10

  • Python >= 2.6.8, >= 2.7, >= 3.4

Roadmap

See the TODOS for the full list of planned-, pending- in-development- or to-be-implemented features.

Installation

  1. Install latest stable version from PyPI:

pip install django-i18next

Or latest stable version from GitHub:

pip install -e git+https://github.com/barseghyanartur/django-i18next@stable#egg=django-i18next

Or latest stable version from BitBucket:

pip install -e hg+https://bitbucket.org/barseghyanartur/django-i18next@stable#egg=django-i18next
  1. Add i18next to INSTALLED_APPS of the your projects’ Django settings.

INSTALLED_APPS = (
    # ...
    'i18next',

    # Other project specific apps
    'foo', # Test app
    # ...
)

Usage

Override locale

No matter what your current locale is, you can override it for a certain part of your template using the overridelocale template tag.

Load the templatetags.

{% load i18n i18next %}

The following code forces Dutch locale for whatever is put inside the overridelocale block.

{% overridelocale 'nl' %}
    <p>
        <a href="/login/">{% trans "Log in" %}</a>
    </p>
{% endoverridelocale %}

The following code forces Russian locale for whatever is put inside the overridelocale block.

{% overridelocale 'ru' %}
    <p>
        <a href="/login/">{% trans "Log in" %}</a>
    </p>
{% endoverridelocale %}

The following code forces English locale for whatever is put inside the overridelocale block.

{% overridelocale 'en' %}
    <p>
        <a href="/login/">{% trans "Log in" %}</a>
    </p>
{% endoverridelocale %}

Disable translations

No matter what your current locale is, you can disable translations for a certain part of your template using the disabletranslations template tag.

{% load i18n i18next %}

{% disabletranslations %}
    <p>
        <a href="/login/">{% trans "Log in" %}</a>
    </p>
{% enddisabletranslations %}

Demo

Live demo

See the live demo app on Heroku.

Run demo locally

In order to be able to quickly evaluate the django-i18next, a demo app (with a quick installer) has been created (works on Ubuntu/Debian, may work on other Linux systems as well, although not guaranteed). Follow the instructions below for having the demo running within a minute.

Grab the latest django_i18next_example_app_installer.sh:

wget https://raw.github.com/barseghyanartur/django-i18next/stable/examples/django_i18next_example_app_installer.sh

Assign execute rights to the installer and run the django_i18next_example_app_installer.sh:

chmod +x django_i18next_example_app_installer.sh
./django_i18next_example_app_installer.sh

Open your browser and test the app.

If quick installer doesn’t work for you, see the manual steps on running the example project.

Debugging

By default debugging is turned off. Set the I18NEXT_DEBUG to True in the settings.py of your project in order to do so.

License

GPL 2.0/LGPL 2.1

Support

For any issues contact me at the e-mail given in the Author section.

Author

Artur Barseghyan <artur.barseghyan@gmail.com>

Project details


Download files

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

Source Distribution

django-i18next-0.1.3.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

django_i18next-0.1.3-py2.py3-none-any.whl (10.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-i18next-0.1.3.tar.gz.

File metadata

File hashes

Hashes for django-i18next-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a4b64473cc3c65b3847eb2ac447e2d00493ec63ba9a7151b27fd8dab394af215
MD5 e356a7b2d03705fe19fb8e71e93af8cf
BLAKE2b-256 980dfd29e1fd815ca9ffb487800cafa4ca94b5e03d5d1fb9704b8332261a0186

See more details on using hashes here.

File details

Details for the file django_i18next-0.1.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_i18next-0.1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8365f2944dba167e76831da304c14127ec782eed6cc441234df3f402d4ec324c
MD5 662b7aac39d13bb3c90617a4c27c1577
BLAKE2b-256 96271b6c216222e12d7ee1d92c11e87853131bea66394936f0a016186d5d8745

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page