Pull to refresh

Django, Staticfiles, Windows и UnicodeDecodeError

Reading time 1 min
Views 3.7K
Разработчикам, не сидящим все время под windows, но иногда там появляющимся оная операционка частенько преподносит сюрпризы. Столкнувшись с одним из них спешу поделиться, ибо метод лечения крайне неочевиден. На понимание, что ни Django ни ваш код не виноваты может уйти не один час…

Итак, имеется девственно чистая (с точки зрения python'a) винда на которой он никогда не стоял. Ставим. Следом ставим setuptools, инсталлим pip, distribute, virtualenv… Вообщем, создаем минимальное рабочее окружение. Тянем с репозитория наш проект, syncdb, права… Стартуем — OK. А далее, на этапе отдачи контента получаем UnicodeDecodeError в самом неожиданном месте. И при этом вы не просто уверены, а своими глазами можете наблюдать, как ваш проект спокойно работает под никсами и на соседней винде…

Метод лечения:
  • открыть regedit
  • найти там HKEY_CLASSES_ROOT\MIME\Database\Content Type
  • проинспектировать на предмет кириллицы в именах MIME-типов
  • переименовать или прибить данные имена
  • закрыть regedit

ВСЕ!

PS: Пока писал все это — подумал, что виновата все-таки Django. Может кто, хорошо владеющий языком, оформит багреквест?
Tags:
Hubs:
+21
Comments 17
Comments Comments 17

Articles