Skip to main content

A Django app with utilites to assist in project-wide translation

Project description

django-db-translate is an app with utilites to assist in project-wide translation.

With django-db-translate, you can:

  1. Select fields from the database to include in .po files using makemessages

  2. Edit translations directly in the admin site

Note

This app is a work in progress and may break unexpectedly.

Quick start (Database Translations)

  1. Add “django_db_translate” to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = [
        ...,
        "django_db_translate",
    ]
  2. Add your project’s locale directory to your LOCALE_PATHS setting like this:

    LOCALE_PATHS = [
        BASE_DIR / 'locale'
    ]
  3. Run python manage.py migrate to create the models.

  4. Add a translatable_fields class attribute to any model with fields you want to be translatable:

    class MyModel(models.Model):
        translatable_fields = ('txt_field',)
        txt_field = models.CharField()
  5. Run python manage.py makemessages --all --include-db-strings to generate the .po files

Quick start (Admin Translation Editing)

  1. Follow steps 1-3 from Quick start (Database Translations)

  2. Include the custom admin site inplace of the standard admin site in your project’s URLconf:

    from django_db_translate import admin
    urlpatterns = [
        ..., # Your other URLs here
        path("admin/", admin.site.urls),
    ]
  3. Add “django_db_translate.middleware.DBTranslateAdminMiddleware” to your MIDDLEWARE setting after any other Locale manipulating middlewares:

    MIDDLEWARE = [
        ...,
        'django_db_translate.middleware.DBTranslateAdminMiddleware'
    ]
  4. Give the Dbtranslate | db translate permissions | Manage translations permission to any user that requires translation editing permissions

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_db_translate-0.2.7.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_db_translate-0.2.7-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file django_db_translate-0.2.7.tar.gz.

File metadata

  • Download URL: django_db_translate-0.2.7.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for django_db_translate-0.2.7.tar.gz
Algorithm Hash digest
SHA256 32e52cc95636c1b8a293c70713ba4a74ef706151135d78d3a8f6d60b3723ccd7
MD5 bf670621853046d657fd9e8b6b276982
BLAKE2b-256 d5f12f8afb709f9a08c8cb1bb53253acf9b92005be3bd7983cda9b33f9f22225

See more details on using hashes here.

File details

Details for the file django_db_translate-0.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for django_db_translate-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 fc582e0ba72fc3f271af08145d8d71d4c3dceff7bf871de85b2ae583204f7484
MD5 d3e70aca27b83203a93518b0f8b8ab4f
BLAKE2b-256 590c6abd5c15ed341dc9f47e8f97a1145c724a75aae2c9db2d61eb80bd31d179

See more details on using hashes here.

Supported by

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