DBはUTF8だけど、携帯サイトなどでShift_JISも使いたい。
DBICをShift_JISで上手く使うには
- Template::Plugin::Jcodeを使う。 TTビューはアクセサの最後に.jcode.sjisを付ける。フォームからの入力は、手動変換。
- Data::FormValidatorのfiltersでUnicode::Japaneseのcode refを指定して一括変換してしまうのがよいかも。
- Catalyst::Plugin::Unicode::Encodingで入出力の内外を自動変換。
- DBIx::Class::InflateColumnを使って自動変換。変換するカラムを指定する必要があるため、少し面倒。 (DBIx::Class::UTF8Columnsも同じ手間)
2が簡単そうだけど、UTF8とShift_JIS用にスキーマを二重に作るのも面倒だし、携帯のキャリア別の絵文字の関係で1で使い初めました。
コメントする