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.8.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.8-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_db_translate-0.2.8.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.8.tar.gz
Algorithm Hash digest
SHA256 590c1569f9f26f468ab07b97a2710a80573910ed3384c0274a12a6c3a79d4d88
MD5 31af4ceee18bb304beba052db4823393
BLAKE2b-256 20cd7889c74a3328f7ebeb8829731ee66829efa2bb20ed99185d7d4a69d7c111

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_db_translate-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 af2f050c7832de2ffb147a6831e2244042afe8c9fb0b9586679aaeb257f71ff4
MD5 3d26b49986c8a562614357af495dd30a
BLAKE2b-256 ad18191e56706b69ef59e588dad55efcc210cfc863c01f0efb9adf0f913247e3

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