Verander locale voor django-admin-tools

In mijn settings.py bestand heb ik:

LANGUAGE_CODE = 'ru-RU'

ook heb ik django-admin-tools geïnstalleerd en gewerkt. Maar de admin-taal is nog steeds engels. Wat doe ik verkeerd?

PS.

$ cat settings.py | grep USE | grep -v USER
USE_I18N = True
USE_L10N = True
USE_TZ = True
6

2 antwoord

U moet de taal specifiek instellen voor de beheer-app. Aangezien django geen vervolgkeuzemenu voor talen bevat als onderdeel van de standaardaanmelding, hebt u enkele opties:

  1. Login to your normal (non admin view), with superuser/staff credentials and the correct language, then shift over to the admin URL.

  2. Update the admin templates and add a language dropdown see this snippet.

  3. Create some custom middleware to set the language for admin:

    from django.conf import settings
    from django.utils import translation
    
    class AdminLocaleMiddleware:
    
        def process_request(self, request):
            if request.path.startswith('/admin'):
                request.LANG = getattr(settings, 'ADMIN_LANGUAGE_CODE',
                                       settings.LANGUAGE_CODE)
                translation.activate(request.LANG)
                request.LANGUAGE_CODE = request.LANG
    

    Add it to your MIDDLEWARE_CLASSES

    MIDDLEWARE_CLASSES = {
        # ...
        'foo.bar.AdminLocaleMiddleware',
        # ...
    }
    

    Set the language you want for the admin in settings.py:

    ADMIN_LANGUAGE_CODE = 'ru-RU'
    
7
toegevoegd
Hallo bedankt voor het antwoord. Ik probeer je [3] en het lukt me niet om de middleware op te nemen, waar plaats je het bestand?
toegevoegd de auteur Loïc, de bron
Bedankt, het lijkt erop dat ik dat nodig heb!
toegevoegd de auteur Drakmail, de bron

Controleer of vertaling en lokalisatie is ingeschakeld in uw settings.py :

USE_I18N = True
USE_L10N = True

Controleer ook of u het vertaalbestand ( .mo , .po ) voor Russisch heeft.

0
toegevoegd
Ja, ik heb deze regels. .mo- en .po-bestanden bestaan ​​in sitepakketten.
toegevoegd de auteur Drakmail, de bron