django-phrase is the official library for integrating Phrase Strings In-Context Editor with Django
To use django-phrase with your application you have to:
- Sign up for a Phrase account: https://app.phrase.com/signup
- Use the Django framework for Python
You can find a demo project in the demo
folder, just run follow the README.md
in that folder
NOTE: You can not use the old version of the ICE with integration versions of >2.0.0, you have to instead use 1.x.x versions as before
pip install django-phrase
Add phrase to the list of installed apps::
INSTALLED_APPS = (
'phrase',
)
Add the following template snippets to your layout file templates/base_generic.html
or equivalent
{% load phrase_i18n %}
{% phrase_javascript %}
Then use {% load phrase_i18n %}
in your templates, e.g. demo/ice_demo/templates/index.html
And the following config to your settings.py
# Phrase In-Context Editor settings
PHRASE_ENABLED = True
PHRASE_ACCOUNT_ID = "YOUR_ACCOUNT_ID" # Set your own account id
PHRASE_PROJECT_ID = "YOUR_PROJECT_ID" # Set your own project id
PHRASE_DATACENTER = "eu" # Choose your datacenter 'eu' | 'us'
PHRASE_PREFIX = "{{__"
PHRASE_SUFFIX = "__}}"
You can find the Project-ID in the Project overview in the PhraseApp Translation Center. You can find the Account-ID in the Organization page in the PhraseApp Translation Center.
If this does not work for you, you can also integrate the JavaScript snippet manually.
Old version of the ICE is not available since version 2.0.0. If you still would rather use the old version, please go back to 1.x.x versions.
In addition to the settings in your settings.py
, set the US datacenter to enable the ICE to work with the US endpoints.
# Phrase In-Context Editor settings
PHRASE_ENABLED = True
PHRASE_ACCOUNT_ID = "YOUR_ACCOUNT_ID" # Set your own account id
PHRASE_PROJECT_ID = "YOUR_PROJECT_ID" # Set your own project id
PHRASE_DATACENTER = "us" # Choose your datacenter 'eu' | 'us'
PHRASE_PREFIX = "{{__"
PHRASE_SUFFIX = "__}}"
When PHRASE_ENABLED = True
this package modifies the returning values from translation functions to present a format which the ICE can read.
Run unit tests:
python manage.py test
We welcome anyone who wants to contribute to our codebase, so if you notice something, feel free to open a Pull Request! However, we ask that you please use the Conventional Commits specification for your commit messages and titles when opening a Pull Request.
Example: chore: Update README
Please use GitHub issues to share your problem, and we will do our best to answer any questions or to support you in finding a solution.
Detailed changes for each release are documented in the changelog.