DBIx::Skinny の on_connect_do

perlDBI で utf8 な文字列を扱う場合には、
接続時に、

$dbh->do('set names utf8');

と指定するが、

DBIx::Skinny でこれ相当のことをやるには、Model で次のように定義すればそさそう。

package MyApp::Model;
use strict;
use warnings;

use DBIx::Skinny connect_info => +{
    dsn => 'dbi:xxx',
    username => 'xxxx',
    password => 'xxxx',
    connect_options => {
        mysql_enable_utf8 => 1
    }
    on_connect_do => [
        'SET NAMES utf8',
    ]
};

on_connect_do で指定するのは、ドキュメントにも書いておらず、
ソースを見ないとわからなかった。

と、ここまで書いたが、
そもそも set name utf8 を使うのはお勧めできないらしい

libmysqlclientを使うプログラムはset namesをutf8であっても使ってはいけない | へぼい日記
http://blog.everqueue.com/chiba/2009/02/05/129/

set character set utf8 を指定しても、utf8 として扱うことができたけれど、よいのかな。

    on_connect_do => [
        'set charcter set utf8',
    ]