Django module for multi languages management
Project description
django-text-manager - no more problems with texts for bots, websites, etc.
v0.1.1 - Basic functionality with api
v0.1.5 - Fixes of some bugs, new variable TEXT_MANAGER_DEFAULT_API_LANGUAGE in settings
Documentation
settings.py
INSTALLED_APPS = [
...
"textmanager",
...
]
TEXT_MANAGER_EXTRA_LANGUAGES = ['uk'] # Optional, default languages when u add new text
TEXT_MANAGER_AVAILABLE_LANGUAGES = ['ru', 'uk', 'en'] # Optional, list of availbale languages in project
TEXT_MANAGER_DEFAULT_API_LANGUAGE = 'en' # Optional, default language for api, fr. en to render english text if 'language' row in empty
How to add languages? (load in database 107 different languages)
python3 manage.py migrate
python3 manage.py loadlanguages
Usage
from textmanager.models import Text
text = Text.objects.get(unique_id='test').render(language="en", params={
"var1": "friend"
})
print(text)
# >>> Hello, friend! - text in db: Hello, {{ var1 }}!
API
urls.py
from django.urls import path, include
urlpatterns = [
path("textmanager/", include("textmanager.urls")),
]
how to send request?
import requests
import json
resp = requests.post(url="http://0.0.0.0:1234/textmanager/text/", json={
"unique_id": "test",
"language": "en", # optional, default=None
"render_with_jinja": False, # optional, default=true
"params": {} # optional, default={}
}, headers={"Authorization": "Token ****"})
data = json.loads(resp.text)
print(data)
# >>> {'text': 'Hello, {{ var1 }}!'} # if language specified
# >>> {
# 'texts': [
# {
# 'language': {
# 'alpha2': 'en',
# 'alpha3_b': 'eng',
# 'english_name': 'English',
# 'language_name': 'English',
# 'flag': '🇬🇧'
# },
# 'text': 'Hello, {{ var1 }}!'
# }, ...
# ]
# }# if language is not specified
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
django_text_manager-0.1.6.tar.gz
(15.0 kB
view details)
File details
Details for the file django_text_manager-0.1.6.tar.gz
.
File metadata
- Download URL: django_text_manager-0.1.6.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc24048712ffe5203840230c9b27fddf775061df1237245749e57150838942f8 |
|
MD5 | ce955a53f67fff5ec3737244e672d8df |
|
BLAKE2b-256 | e6605f8a03530eac70a4bb71488602dddace5435a1f869cca9682c543dfc8624 |