@@ -177,6 +177,57 @@ We recommend the [`django-reusable-app`][django-reusable-app] template as a good
...
@@ -177,6 +177,57 @@ We recommend the [`django-reusable-app`][django-reusable-app] template as a good
Once your package is decently documented and available on PyPI open a pull request or issue, and we'll add a link to it from the main REST framework documentation.
Once your package is decently documented and available on PyPI open a pull request or issue, and we'll add a link to it from the main REST framework documentation.
# Translations
If REST framework isn't translated into your language you can request that it is at the [Transifex project][transifex].
## Managing Transfiex
The [official Transifex client][transifex-client] is used to upload and download translations to Transifex. The client is installed using pip:
```
pip install transifex-client
```
To use it you'll need a login to Transifex which has a password, and you'll need to have administrative access to the Transifex project. You'll need to create a `~/.transifexrc` file which contains your authentication information:
```
[https://www.transifex.com]
username = user
token =
password = p@ssw0rd
hostname = https://www.transifex.com
```
## Upload new source translations
When any user-visible strings are changed, they should be uploaded to Transifex so that the translators can start to translate them. To do this, just run:
```
cd rest_framework
django-admin.py makemessages -l en_US
cd ..
tx push -s
```
When pushing source files, Transifex will update the source strings of a resource to match those from the new source file.
Here's how differences between the old and new source files will be handled:
* New strings will be added.
* Modified strings will be added as well.
* Strings which do not exist in the new source file will be removed from the database, along with their translations. If that source strings gets re-added later then [Transifex Translation Memory][translation-memory] will automatically restore the translated string too.
## Get translations
When a translator has finished translating their work needs to be downloaded from Transifex into the source repo. To do this, run:
@@ -3,11 +3,13 @@ REST framework ships with translatable error messages. You can make these appea
...
@@ -3,11 +3,13 @@ REST framework ships with translatable error messages. You can make these appea
## How to translate REST Framework errors
## How to translate REST Framework errors
REST framework translations are managed online using [Transifex.com][transifex]. To get started, checkout the guide in the [CONTRIBUTING.md guide][contributing].
This guide assumes you are already familiar with how to translate a Django app. If you're not, start by reading [Django's translation docs][django-translation].
Sometimes you may want to use REST Framework in a language which has not been translated yet on Transifex. If that is the case then you should translate the error messages locally.
#### How to translate REST Framework error messages locally:
#### To translate REST framework error messages:
This guide assumes you are already familiar with how to translate a Django app. If you're not, start by reading [Django's translation docs][django-translation].
1. Make a new folder where you want to store the translated errors. Add this
1. Make a new folder where you want to store the translated errors. Add this
path to your [`LOCALE_PATHS`][django-locale-paths] setting.
path to your [`LOCALE_PATHS`][django-locale-paths] setting.
...
@@ -90,3 +92,4 @@ display as Django does. You can find more info in the [Django docs on discoveri
...
@@ -90,3 +92,4 @@ display as Django does. You can find more info in the [Django docs on discoveri