Это проблема не Mezzanine или Django, а среды, используемой для их развертывания. См. эту проблему и эту документацию для получения более подробной информации. Для Python недостаточно поддерживать определенную локаль, но также необходимо, чтобы веб-сервер мог правильно обрабатывать файлы Unicode.
Как это исправить, будет зависеть от используемого веб-сервера. Например, если вы используете Apache, вам нужно установить LANG
и LC_ALL
в значения, совместимые с Unicode (по крайней мере, в системах *NIX вы должны найти их в /etc/apache2/envvars
). Примером может быть:
export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8'
Не стесняйтесь заменить код языка/страны на другой, более подходящий для ваших нужд (я использовал pt_BR
вместо en_US
, и у меня все работало нормально). Из сообщения об ошибке, которое вы видите, эти настройки в вашей системе, вероятно, используют ISO-Latin (ISO-8859-1) вместо UTF-8 (который, я полагаю, не может обрабатывать кириллицу).
Если вы используете другой веб-сервер, проверьте его документацию по локализации/интернационализации, чтобы узнать, что нужно изменить. Как я понял, важно предложить поддержку имен файлов в формате Unicode.
person
mgibsonbr
schedule
07.11.2015