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.6.tar.gz (10.9 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.6-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_db_translate-0.2.6.tar.gz
  • Upload date:
  • Size: 10.9 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.6.tar.gz
Algorithm Hash digest
SHA256 69cc4c6f6ddae679baaf1c9f0ad9b8e1e16437914b4065b4ac8b72284e3005cb
MD5 84ecce63302e7071f5bc672c4cbe3982
BLAKE2b-256 fb409d3672bba44e8283cc697112115fe8037c950b1eb469e16f035829b34776

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_db_translate-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 3af2c648d22ee72966551b31ba4bb2215e4710aea1840e0688c56ba72f0eb345
MD5 42f8790fb3a93049b058ed3f804b3ed2
BLAKE2b-256 60bce9a8288cfe087399b56251e49087893c53bb2b70191851f1fa46ac9684da

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