Skip to main content

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
TEXT_MANAGER_PERMISSION_CLASSES = ['rest_framework.permissions.IsAuthenticated',] # Optional, permission classes for api

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={
    "id": 5, # id or unique_id is required
    # or
    "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

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.8.tar.gz (15.5 kB view details)

Uploaded Source

File details

Details for the file django_text_manager-0.1.8.tar.gz.

File metadata

  • Download URL: django_text_manager-0.1.8.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for django_text_manager-0.1.8.tar.gz
Algorithm Hash digest
SHA256 588509530691e3e2f9ef770df6343c884a1ecec11e13ca3e5339b259b13deaac
MD5 68a6e7ee1eaad2516136c13516e1b06e
BLAKE2b-256 853e7bb2f296c696f6191e832d6778cd6a020d5c853f08925e5d7058e87f378e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.8 This release

1 file

0.1.7

1 file

0.1.6

1 file

0.1.5

1 file

0.1.4

1 file

0.1.3

1 file

0.1.2

1 file

0.1.1

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page