- PVSM.RU - https://www.pvsm.ru -

Небольшая заметка про utf-8 в Mojolicious

Я потратил чуть больше времени, чем мне хотелось бы, борясь с Юникодом в своем Mojo проекте, и теперь хочу поделиться полученым опытом, чтобы сэкономить вам несколько драгоценных минут и нервных клеток.

Итак, нужно убедиться, что:

1. Ваша база работает в utf-8.

На примере mysql:

my $dbh = DBI->connect($dsn . "; mysql_enable_utf8=1", $user, $pass);
# либо, после создания $dbh:
$dbh->{mysql_enable_utf8} = 1;
$dbh->do("set names utf8");

Теперь все данные, которые вы пишете или читаете из базы, будут в utf8.

2. У вас правильная кодировка в базе и таблицах

Создавая базу, не забудьте написать

create database foobar default charset = utf8;

Или, при создании таблицы

create table foo (id serial, name varchar(128) not null) default charset = utf8;
2. Во всех ваших шаблонах в начале написано


% use encoding 'utf8';

Должно заработать!

Автор: acidnik

Источник [1]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/mysql/42162

Ссылки в тексте:

[1] Источник: http://habrahabr.ru/post/192024/