Битый час пытался заставить mojolicious нормально рендерить строки в utf8...
А он мне упорно вместо кириллицы рисовал вопросительные знаки. Я уже нервничать стал, обгуглился весь, уже и по перлу, и по Mojo, и по mysql-у прошелся крепкими выражениями. Но все они оказались невинными жертвами.
Все мучения прошли, когда в сроку коннекта DBIx я добавил параметр
mysql_enable_utf8 => 1
Кому пришло в голову отключать поддержку utf-8 в mysql по умолчанию? Что их толкнуло на этот шаг? Лично мне представляется ехидный, укуренный прогер (в очках естестно), который выставляет дефолтное значение mysql_enable_utf8 в 0, приговаривая: "Ну по...тесь часок другой, гы".
По итогу коннекшн стринг для DBIx стал выглядеть вот так:
connect("dbi:mysql:$dbname:$dbhost", $dbuser, $dbpass, { mysql_enable_utf8 => 1 });
И utf8 работает нормально.
Комментариев нет:
Отправить комментарий