DRF автоматически переводит ответные сообщения для некоторых языков, если присутствует правильный заголовок «Accept-Language». Он делает это, как ожидается, например, для Испанский ('es') и французский ('fr'), но, очевидно, не для голландского ('nl'), хотя все необходимые переводы доступны .
DRF позволяет добавлять новые переводы . Но поскольку переводы уже сделаны, в этом нет необходимости.
Настройки Django (без настройки ЯЗЫКОВ):
MIDDLEWARE = [
...
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
USE_I18N = True
USE_L10N = True
USE_TZ = True
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
Поведение с другими языками:
http http://localhost:8000/api/auth/password/reset/ Accept-Language:es
...
Content-Language: es
...
{
"detail": "Método \"GET\" no permitido."
}
Поведение с голландцем:
http http://localhost:8000/api/auth/password/reset/ Accept-Language:nl
...
Content-Language: nl
...
{
"detail": "Method \"GET\" not allowed."
}
Ожидаемое поведение с голландцем ( источник ):
http http://localhost:8000/api/auth/password/reset/ Accept-Language:nl
...
Content-Language: nl
...
{
"detail": "Methode \"GET\" niet toegestaan."
}
Django версия: 2.1
djangorestframework версия: 3.8.0