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.3.tar.gz (9.6 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.3-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_db_translate-0.2.3.tar.gz
  • Upload date:
  • Size: 9.6 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.3.tar.gz
Algorithm Hash digest
SHA256 f45b80292ad8093b00c359b7b42867647723c0ccb4f730fde66b0adaf905fb1f
MD5 1f5800204f810f54f6410a82e648997c
BLAKE2b-256 07b4d42111324878d363ef717c2ffc7f1ec95e10fd17a0c4c7d7849d7998a63b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_db_translate-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7224462746dfc8a8d5c204218c8bc23dcfd265703025beee20f00d3c4f36f1d9
MD5 3bd8c654360d5963926db60f01cdb838
BLAKE2b-256 94ff105f1571d60fc7fe94e83bcfc1087544f138419e61891742a665ba912586

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