Hey, ruX is here.

trac: вопросы вместо русских букв

Довелсь мне поднимать svn+trac.
Одна из проблем - при написании тикета с русскими буквами появлялась следующая ошибка:

Oops...
Trac detected as internal error:
  OperationalError: (1267, "Illegal mix of collations (latin1_swedish_ci,IMPLICT) 
  and utf8_general_ci, COERCIBLE) for operation '='")

Чтоб это исправить в конфиге трэка(conf/trac.ini) нужно изменить параметр default_charset:

[trac]
default_charset = UTF-8

Это даст поддержку юникода. Теперь тикеты создавать можно, но вместо русских букв - вопросы.
Если посмотреть в БД, то видно, что во всех таблицах кодировка latin1 - из за этого и проблемма. Не порядок :)

Я не нашёл орининальнее способа для перевода из latin1 в utf8, кроме как:

  1. Слить дамп бд.
  2. Изменить CHARSET=utf8 во всех CREATE TABLE ...
  3. Снести таблицы которые были из всей базы
  4. Залить изменённый дамп бд

Этот способ подходит если с траком ещё не работали, либо, писали только на английском.
Текст можно заменить("CHARSET=latin1" => "CHARSET=utf8") в любом текстовом редакторе


Хочу добавить что не смотря
на все плюсы трака, он мне показался
очень бажным и не стабильным

Exit mobile version