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.3.0.tar.gz (12.3 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.3.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_db_translate-0.3.0.tar.gz
  • Upload date:
  • Size: 12.3 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.3.0.tar.gz
Algorithm Hash digest
SHA256 94753f3d3f5d2f8583eb9af77ed2b856b9a90a862a7cce25a447d312ab2fba4c
MD5 912ced269b3ccf0dc5c857781e21b4ae
BLAKE2b-256 80489232129d52c9c8478dbab27ecc8cb3503316d64e593e99109e640aa0044f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_db_translate-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 92706b478b823dd44ad91ec9c76991f85eab78c54bdfb1d72bec86e5d4a572ac
MD5 bb109bdbc904325b3f0e7dad2564fc39
BLAKE2b-256 0d6b57b2934d82dc267cb3f23657cc6dcd62d1e9af7f5f30ba34967ce559d654

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